home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #5 & #6 / Amiga Plus CD - 1995 - No. 5 and 6.iso / pd / texte / amigafaq / amigafaqg.doc next >
Text File  |  1995-08-15  |  147KB  |  3,243 lines

  1.   Amiga-FAQ
  2.   *********
  3.   
  4.      Dieses Dokument enthält einige häufig gestellte Fragen und
  5.   versucht, Antworten zu geben. Seine Absicht ist es, neuen Benutzern zu
  6.   helfen und die Zahl der News-Artikel zu reduzieren, die erfahrene
  7.   Benutzer nicht mehr sehen wollen.
  8.   
  9.      Bitte beachten Sie, daß viele Abschnitte bis jetzt noch fast
  10.   völlig leer sind. Ich verstehe von den betreffenden Abschnitten nichts
  11.   und habe nicht das Gefühl, als ob ich daran etwas ändern könnte.
  12.   Damit sind Sie an der Reihe: Füllen Sie die Lücken und teilen Sie mir
  13.   mit, was man hier noch aufnehmen kann!
  14.   
  15.  
  16.   Disclaimer
  17.  
  18.   1 Hardware
  19.     1 Was sind 68EC020, 68EC030 und 68LC040?
  20.     2 Was ist ein mathematischer Coprozessor (FPU) ?
  21.     3 Kann ich eine 3.5'-Festplatte im A1200 verwenden?
  22.  
  23.   2 Das Betriebssystem
  24.     1 Kann ich eine andere als die eingebaute Kickstart benutzen?
  25.     2 Was entspricht unter AmigaDOS dem . (Aktuelles Directory)?
  26.     3 Der Queue-Handler PIPE:
  27.       1 Verwendung von PIPE: in einer AmigaShell
  28.       2 Das Pipe-Kommando
  29.       3 Das Pipe-Kommando in der AmigaShell
  30.       4 Die _mchar-Variable
  31.       5 Bekannte Probleme
  32.  
  33.   3 Grafik
  34.     1 Was heißt Chunky- und Planar-Display?
  35.     2 Was ist Doublebuffering?
  36.     3 Was für Monitore arbeiten am Amiga 1200 oder 4000?
  37.  
  38.   4 Programmierung
  39.     1 Was ist die beste Dokumentation für Programmierer?
  40.     2 Was ist CATS?
  41.     3 Wo bekomme ich die Amiga-Include-Dateien?
  42.     4 Wie werde ich Developer?
  43.     5 Was für Compiler (und Assembler) gibt es?
  44.     6 Warum funktioniert keine Esc-Sequenz?
  45.     7 Kann ich AmigaBasic auf dem A1200 verwenden?
  46.     8 Wie lokalisiere ich mein Programm?
  47.     9 Wie erhält man einen Zeiger auf das Fenster einer Konsole?
  48.     10 Was sind Pragmas?
  49.     11 Mein Compiler/Linker vermißt Symbole.
  50.     12 Wie erfahre ich, was für Funktionen es gibt?
  51.     13 Der GNU C Compiler: Allgemeine Informationen und Installation
  52.       1 Aktuelle Version
  53.       2 Hardwareanforderungen
  54.       3 Wer hat es gemacht?
  55.       4 Wo finde ich die gcc-Quelltexte?
  56.       5 Inline-Dateien
  57.       6 Wie konvertiere ich die Amiga-Libraries für den gcc?
  58.       7 Wie installiere ich den gcc?
  59.       8 Kompilieren
  60.       9 Wichtige Informationsquellen
  61.  
  62.   5 Anwendungen
  63.     1 Text-Editoren
  64.     2 Was für Textverarbeitungsprogramme gibt es?
  65.     3 Desktop Publishing
  66.     4 Was ist TeX und wo bekomme ich es?
  67.     5 Gibt es PostScript-Interpreter auf dem Amiga?
  68.     6 Font Konzepte
  69.       1 Die Amiga Font Formate
  70.       2 Wo gibt es Amiga Fonts
  71.       3 Kommerzielle Font Hersteller
  72.       4 Nicht-Lateinische Zeichensaetze auf dem Amiga
  73.       5 Amiga Font Installation
  74.       6 Amiga Font Utilities
  75.       7 Das Erzeugen von Vektor-Fonts
  76.       8 Probleme und moegliche Loesungen
  77.     7 Wie bearbeite ich Nicht-Latin-Texte?
  78.       1 Japanische Editoren und Anzeigeprogramme
  79.       2 Chinesische Anzeigeprogramme
  80.  
  81.   6 Emulationen
  82.     1 Kann ich meinen Amiga unter Unix benutzen?
  83.     2 Ist es möglich, den Amiga als X11-Terminal zu benutzen?
  84.     3 Wie kann ich MS-Dos-Programme starten?
  85.     4 MsDos-formatierte Wechselplatten am Amiga verwenden
  86.  
  87.   7 Verschiedenes
  88.     1 Gibt es eine Unix-Version von LhA?
  89.     2 Was sind Dateien, die mit ... enden?
  90.     3 Gibt es ein Programm wie Stacker, um die Hard-Disk zu packen?
  91.     4 Wo bekomme ich Fish-Disk xxx?
  92.     5 Wie füllt man die Tintenkartuschen der HPDeskjet-Drucker nach?
  93.     6 Was ist MUI und wo bekomme ich es?
  94.  
  95.   8 Software-Quellen und andere Informationen?
  96.     1 Dateien und Datenbanken zur frei kopierbaren Software
  97.     2 Eine Sammlung von Testberichten
  98.     3 Empfangen von Dateien von einem FTP-Server
  99.     4 Empfangen von Dateien von einem Mail-Server
  100.     5 Empfangen von Dateien von einer Mailbox
  101.     6 Die Fish-PD-Serie
  102.       1 Die Amiga-Library-Disks
  103.       2 Die Fresh-Fish-Serie
  104.     7 Wie kann ich MS-Dos-Disketten lesen und schreiben?
  105.     8 Wie transportiere ich sehr große Dateien
  106.     9 Diskussionen über Mail
  107.     10 Andere FAQ's
  108.  
  109.   Das Amiga-FAQ-Archiv
  110.  
  111.   Beiträge zur Amiga-FAQ
  112.  
  113.   Danksagungen
  114.  
  115.   Index
  116.  
  117.  
  118.  
  119.   Disclaimer
  120.   **********
  121.   
  122.      Diese Datei steht unter dem
  123.   
  124.        Copyright (C)  Ignaz Kellerer
  125.                        Georg-Habel-Str. 11
  126.                  81241 München (Deutschland)
  127.                        Tel. (+49) 089 / 885147
  128.                        Internet: kellerer@informatik.tu-muenchen.de
  129.   
  130.      Es ist erlaubt, sowohl veränderte als auch unveränderte Kopien
  131.   dieser Datei herzustellen und zu verteilen, vorausgesetzt, daß dabei
  132.   die Bestimmungen der "GNU General Public License" eingehalten werden und
  133.   die Copyright-Notiz sowie diese Erlaubnis unverändert auf allen Kopien
  134.   enthalten sind.
  135.   
  136.      Der Autor gibt *absolut keine* Garantie, daß die hier gegebenen
  137.   Antworten korrekt sind. Einige dieser Antworten sind von anderen
  138.   Benutzern beigetragen worden und ich habe teilweise nicht einmal die
  139.   Möglichkeit, auch nur die einfachsten Tests durchzuführen.
  140.   Vorschläge, weitere Beiträge, neue Fragen und Antworten, Kritik und
  141.   Beschimpfungen (oh, wie ich mein `nil:' liebe :-) sind aber sehr
  142.   willkommen.  Siehe Beiträge.
  143.   
  144.   1 Hardware
  145.   **********
  146.   
  147.      Dieses Kapitel enthält Fragen zur Amiga-Hardware.
  148.   
  149.   1.1 Was sind 68EC020, 68EC030 und 68LC040?
  150.   ==========================================
  151.   
  152.      Motorola, die Herstellerfirma der 680x0-Familie, bietet auch
  153.   gestutzte Versionen ihrer Prozessoren an. Diese sind etwas
  154.   preisgünstiger als die Originale, weshalb Commodore auch den 68EC020 in
  155.   den A1200 und den 68EC030 in den A4000/030 einbaut. Dafür können sie
  156.   aber auch etwas weniger.
  157.   
  158.      Der Unterschied zwischen 68020 und 68EC020 ist, daß letzterer nur
  159.   16MB Speicher adressieren kann. (Das ist der Grund, warum der A1200 nur
  160.   maximal 10MB RAM haben kann.) In den meisten Fällen sollte man den
  161.   Unterschied aber gar nicht bemerken.
  162.   
  163.      Das ist beim 68EC030 anders: Viele Benutzer werden feststellen, daß
  164.   der 68030 eine MMU (Memory management unit) hat und der 68EC030 nicht.
  165.   (Beim 68020 gibt es noch die Möglichkeit, eine externe MMU, den 68851
  166.   nachzurüsten.) Es gibt einige wichtige Programme, die eine MMU
  167.   brauchen, z.B. Enforcer (ein Hilfsprogramm zur Fehlersuche), GigaMem
  168.   (ein Programm zur Emulation von virtuellem RAM) oder alle aktuellen
  169.   Unix-Versionen (siehe Unix). Wer eines dieser Programme verwenden will
  170.   und keinen A4000 oder A3000 hat, braucht deshalb eine Prozessorkarte
  171.   mit einem 68030 oder 68040.
  172.   
  173.      Der 68LC040 ist ein 68040 ohne FPU. Siehe FPU.
  174.   
  175.   1.2 Was ist ein mathematischer Coprozessor (FPU) ?
  176.   ==================================================
  177.   
  178.      Die Prozessoren 68000 bis 68030 bieten ausschließlich Integer (=
  179.   Ganzzahl) Arithmetik. Floating-Point (Fließkomma) Operationen werden
  180.   über eine Befehlssequenz ausgeführt. Floating-Point Units (FPUs) bzw.
  181.   mathematische Koprozessoren sind für diese Aufgaben optimiert.
  182.   
  183.      Im wesentlichen kann man drei FPU-Typen unterscheiden: Den 68881,
  184.   68882 und die interne FPU des 68040. Aufgrund der Trennung von
  185.   Arithmetikeinheit und Konvertierlogik (notwenig zur Konversion
  186.   anliegender Zahlenformate in das prozessoreigene 80bit-Format) ist die
  187.   68882 FPU bis zu 1.5 mal schneller als die 68881. Die interne FPU des
  188.   68040 besitzt darüber hinaus eine dreistufige Pipeline, allerdings
  189.   sind in ihr nicht alle Befehle der 68881/68882 realisiert. Die
  190.   fehlenden (trigonometrischen) Befehle werden per Software emuliert
  191.   (z.B. über die 68040.library).
  192.   
  193.      Für viele Programme (Raytracing, DTP, Mathematik, TeX) existieren
  194.   spezielle Coprozessorversionen. Je nach Auslastungsgrad kann damit eine
  195.   Geschwindigkeitssteigerung bis zum Faktor 50 erreicht werden.
  196.   
  197.      Michael Kaiser (kaiser@ira.uka.de)
  198.   
  199.   1.3 Kann ich eine 3.5'-Festplatte im A1200 verwenden?
  200.   =====================================================
  201.   
  202.      Viele Leute würden statt der im A1200 üblichen 2.5"-Festplatten
  203.   lieber eine 3.5"-Festplatte verwenden, da diese viel billiger sind. Das
  204.   ist auch möglich, allerdings braucht man ein spezielles Kabel, um die
  205.   Festplatte an den eingebauten IDE-Controller anzuschließen. Außerdem
  206.   sollte man isolierendes Material zwischen die Festplatte und die
  207.   Platine schieben. Es gibt Berichte über thermische Probleme, aber ich
  208.   habe nichts davon bemerkt.
  209.   
  210.      Einige Händler bieten für ca. 40-50DM Kabel, Isoliermaterial und
  211.   Informationen an, was sicherlich empfehlenswert ist. In den üblichen
  212.   Magazinen sollte man diesbezügliche Anzeigen finden.
  213.   
  214.      Thomas Schuh (thomas@stepout.tynet.sub.org)
  215.   
  216.      Grundsätzlich sollte man beim Einbau von IDE-Festplatten (egal ob
  217.   2.5" oder 3.5") bedenken, daß man außer bei den von Commodore
  218.   getesteten und freigegebenen Modellen und ROM-Versionen nicht sicher
  219.   sein kann, daß sie problemlos funktionieren werden. Beim A1200 sollte
  220.   man zusätzlich noch berücksichtigen, daß der Einbau von 3.5"-
  221.   Festplatten in diesen Rechner von Commodore nicht vorgesehen war und
  222.   die hauptsächlich für den Einsatz in Notebooks konstruierten 2.5"-
  223.   Festplatten einige Vorteile haben können (z. B. bei Stromverbrauch,
  224.   Hitzeentwicklung oder Stoßfestigkeit), die im engen Tastaturgehäuse
  225.   des A1200 mit der begrenzten Stromversorgung relevant sein könnten.
  226.   Mit dem größeren Format verschlechtert sich eventuell auch die
  227.   Belüftung des Rechners. Werden beim Einbau Manipulationen an den
  228.   Abschirmblechen vorgenommen, sind möglicherweise auch die Bestimmungen
  229.   zur Funkentstörung nicht mehr erfüllt.
  230.   
  231.      Kurz gesagt: könnte man 3.5"-Festplatten wirklich ohne jedes Problem
  232.   im A1200 verwenden, hätte Commodore selbst bestimmt auch diese statt
  233.   der etwas teureren 2.5"-Festplatten im A1200-HD verwendet.
  234.   
  235.   2 Das Betriebssystem
  236.   ********************
  237.   
  238.      Dieses Kapitel behandelt Fragen sowohl zum Betriebssystem Kickstart
  239.   als auch zur Oberfläche Workbench.
  240.   
  241.   2.1 Kann ich eine andere als die eingebaute Kickstart benutzen?
  242.   ===============================================================
  243.   
  244.      Zunächst ein paar Worte zur Legalität der Benutzung einer anderen
  245.   Kickstart: Es ist *nicht* erlaubt, Kopien von Kickstarts fremder
  246.   Computer zu erstellen und auf einem anderen Computer zu benutzen! (Es
  247.   ist sogar fraglich, ob man das auf eigenen Maschinen darf, wenn man
  248.   mehr als einen Amiga hat.)
  249.   
  250.      Natürlich ist es möglich und für gewisse Personen (z.B. Developer,
  251.   siehe Developer) auch erlaubt.  Es gibt zwei verschiedene
  252.   Möglichkeiten, eine Hardware- und eine Softwarelösung. Erstere ist,
  253.   eine Platine in den Computer einzubauen, die sowohl die eigene als auch
  254.   eine andere Kickstart aufnehmen kann, zwischen denen man dann
  255.   umschalten kann.
  256.   
  257.      Die Softwarelösung benötigt ein Programm (einen sogenannten
  258.   Softkicker) und die Kopie der anderen Kickstart. Der Softkicker
  259.   alloziert RAM, lädt die Kickstart-Kopie in dieses RAM und führt einen
  260.   Reset aus. Natürlich fehlt dann nach dem Reboot unter der neuen
  261.   Kickstart etwas RAM: 256KB weniger für Kickstart 1.2 oder 1.3 und
  262.   512KB für die neueren Kickstarts.  Es gibt verschiedene Softkicker,
  263.   von denen einige eine MMU benötigen (siehe 68EC0xx). Ich empfehle
  264.   SKick 3.43 (Aminet, Directory `util/boot') empfehlen, das keine MMU
  265.   braucht und viele verschiedene Kickstarts unterstützt. Die Kopie des
  266.   ROM zu erzeugen ist mit einem Programm wie dem Folgendem möglich:
  267.   
  268.            #include <stdio.h>
  269.        
  270.            #define kickorig 0xf80000   /*  0xfc0000 für Kick 1.2 und 1.3   */
  271.            #define kicklen  0x080000   /*  0x040000 für Kick 1.2 und 1.3   */
  272.        
  273.            void main(int argc, char*argv[])
  274.            {
  275.                FILE *fh;
  276.        
  277.                if ((fh = fopen("kickstart.file", "w"))  !=  NULL) {
  278.                    result = fwrite(kickorig, kicklen, 1, fh);
  279.                }
  280.                fclose(fh);
  281.            }
  282.   
  283.   2.2 Was entspricht unter AmigaDOS dem . (Aktuelles Directory)?
  284.   ==============================================================
  285.   
  286.      Unter AmigaDOS entspricht dem . (der das aktuelle Directory unter
  287.   Unix und gewissen nicht-reentranten Interrupt-Handlern repräsentiert)
  288.   der leere String, den man als "" schreibt.
  289.   
  290.      Beispiel:
  291.                COPY S:Startup-Sequence ""
  292.   
  293.   Dies kopiert Ihre Startup-Sequence in das aktuelle Directory.
  294.   
  295.      Es gibt verschiedene Programme, die AmigaDOS so patchen, daß es .
  296.   und .. wie unter Unix akzeptiert, z.B. UnixDirs. (Aminet,
  297.   `os20/util/UnixDirsII.lha' oder Fish-Disk 837)
  298.   
  299.      Arno Eigenwillig (arno@yaps.dinoco.de)
  300.   
  301.   2.3 Der Queue-Handler PIPE:
  302.   ===========================
  303.   
  304.      In AmigaOS 2.04 wurde ein neuer Handler eingeführt, der es erlaubt,
  305.   Daten zwischen verschiedenen Programmen auszutauschen. Dieser Handler
  306.   heißt `L:Queue-Handler', ist aber besser als `PIPE:' bekannt.
  307.   
  308.      `PIPE:' implementiert eine echte, Unix-artige `Pipe', mit der man
  309.   die Standardausgabe eines Programms als Standardeingabe eines anderen
  310.   Programms verwenden kann. Es ist auch möglich, mehrere Programme über
  311.   mehrere Pipes gleichzeitig zu verketten.  Pipes brauchen weniger RAM
  312.   für temporäre Dateien, und der Zugriff ist schneller.
  313.   
  314.      Allerdings unterscheidet sich `PIPE:' von Unix-Pipes in zwei
  315.   wesentlichen Punkten:
  316.     1. Es handelt sich um ein Device; die Ein- und Ausgabe von Programmen
  317.        muß also nicht unbedingt eine Datei sein, obwohl das meistens der
  318.        Fall ist. Man kann auch `PIPE:' wie andere Devices verwenden, aber
  319.        natürlich weder Directories lesen noch Seek-artige Zugriffe
  320.        durchführen.
  321.   
  322.     2. Es gibt keine Flush-Operation. Wenn nicht alle Daten gelesen
  323.        wurden, die in `PIPE:' geschrieben wurden, dann bleiben sie
  324.        stehen, bis sie evtl. von einem anderen Programm gelesen werden.
  325.        Man muß also Pipes immer leeren, bevor man sie schließt.
  326.   
  327.     3. Aus demselben Grund kann ein Programm blockiert werden, wenn es
  328.        die interne Puffergröße überschreibt. Auch dies wird durch
  329.        rechtzeitiges Leeren der Pipe vermieden.
  330.   
  331.      Der Handlername von PIPE: ist vollständig
  332.   `PIPE:name/bufsize/bufnum', wobei `name' den verwendeten Pipekanal
  333.   identifiziert und eindeutig sein sollte. Durch verschiedene Namen kann
  334.   man also gleichzeitig mehrere Pipe-Kanäle öffnen. Die optionalen
  335.   Argumente `bufsize' und `bufnum' geben die Größe und Anzahl der
  336.   verwendeten Datenpuffer an. Meist schreibt man einfach `PIPE:name', die
  337.   Vorgabegröße ist dann 4096 Bytes und die Anzahl unbegrenzt.
  338.   
  339.      Osma Ahvenlampi (Osma.Ahvenlampi@hut.fi)
  340.   
  341.   2.3.1 Verwendung von PIPE: in einer AmigaShell
  342.   ----------------------------------------------
  343.   
  344.      Zunächst muß `PIPE:' natürlich mit `Mount' angemeldet sein.  Dies
  345.   kann durch das Kommando
  346.            1> Mount PIPE:
  347.   
  348.   in der Shell geschehen, ab AmigaOS 2.1 auch dadurch, daß man die Datei
  349.   `PIPE' nach `DEVS:DosDrivers' schiebt.
  350.   
  351.      In einem AmigaShell-Fenster kann man dann folgende Kommandos
  352.   eingeben:
  353.            1> Run List SYS: >PIPE:Listoutput
  354.            1> More <PIPE:Listoutput
  355.   
  356.   (1)
  357.   
  358.      Diese beiden Kommandos erzeugen also zunächst eine Liste der Dateien
  359.   in `SYS:' und geben diese dann mit Hilfe des More-Kommandos aus.  Man
  360.   könnte auch folgendes probieren:
  361.            1> Run List SYS: NOHEAD >PIPE:Listoutput
  362.            1> Run Sort PIPE:Listoutput PIPE:Sortedoutput
  363.            1> More <PIPE:Sortedoutput
  364.   
  365.   Dies würde also die Liste vor der Ausgabe noch sortieren.
  366.   
  367.      Beachten Sie die Verwendung von `Run' außer für das jeweils letzte
  368.   Programm, durch die alle Programme gleichzeitig ablaufen.  Man kann
  369.   auch die Programme gleichzeitig in verschiedenen Shells ablaufen lassen.
  370.   
  371.      Das Leeren der Pipe kann auch manuell geschehen, vorausgesetzt man
  372.   kennt den Namen des verwendeten Kanals, indem man folgendes eingibt:
  373.            1> Type PIPE:name TO NIL:
  374.   
  375.      ---------- Footnotes ----------
  376.   
  377.      (1)  Dabei `1>' der Prompt der AmigaShell, die eine Eingabe
  378.   erwartet. Die Nummer kann natürlich variieren.
  379.   
  380.   2.3.2 Das Pipe-Kommando
  381.   -----------------------
  382.   
  383.      Im vorigen Beispiel ist die Verwendung von Pipes recht kompliziert,
  384.   vor allem verglichen mit Unix-Pipes. Es gibt aber eine bessere
  385.   Möglichkeit.
  386.   
  387.      Andy Finkel, der früher bei Commodore gearbeitet hat, hat auch ein
  388.   Kommando `Pipe' geschrieben (was man nicht mit `PIPE:' verwechseln
  389.   sollte!), das die Benutzung von Pipes stark vereinfacht.
  390.   Unglücklicherweise wurde dieses Programm letzten Endes dann doch nicht
  391.   in die offizielle Workbench aufgenommen, allerdings mit Billigung von
  392.   Commodore veröffentlicht (Quellen: Fish-Disk 637, Aminet,
  393.   `util/cli/finkelshelltools.lha'). Dieses Programm arbeitet auch unter
  394.   OS3.1 noch problemlos.
  395.   
  396.      Die Verwendung des Pipe-Kommandos ist einfach. Man übergibt die
  397.   auszuführenden Programme als Argumente an Pipe, getrennt durch das
  398.   Zeichen |, z.B.
  399.            1> Pipe List SYS: | More
  400.                oder
  401.            1> Pipe List: SYS: NOHEAD | Sort IN: OUT: | More
  402.   
  403.   Beachten Sie die Verwendung von `IN:' und `OUT:', die nötig sind, weil
  404.   das Sort-Kommando nicht von der Standardeingabe lesen und nicht auf die
  405.   Standardausgabe schreiben kann. Diese Devices werden durch das
  406.   Kommandos Pipe simuliert. Durch die Environment-Variable _PCHAR kann
  407.   man auch ein anderes Zeichen anstelle von | verwenden.
  408.   
  409.   2.3.3 Das Pipe-Kommando in der AmigaShell
  410.   -----------------------------------------
  411.   
  412.      Es gibt ein sehr nützliches, allerdings undokumentiertes Feature
  413.   der AmigaShell: Diese kennt das Pipe-Kommando! Ist die lokale Variable
  414.   _PCHAR gesetzt, dann kann man Pipes sogar ohne Eingabe des
  415.   Pipe-Kommandos benutzen. Die Shell erkennt das durch _PCHAR vorgegebene
  416.   Zeichen und ruft für Kommandozeilen, die es enthalten, automatisch
  417.   Pipe auf.
  418.   
  419.      Am besten wird das folgende Kommando in `s:Shell-Startup'
  420.   eingetragen:
  421.            1> Set _pchar "|"
  422.   
  423.   (1) Man kann die vorigen Beispiele dann so ausführen:
  424.            1> List SYS: | More
  425.                oder
  426.            1> List SYS: NOHEAD | Sort IN: OUT: | More
  427.   
  428.      Dies entspricht also völlig den Unix-Pipes.
  429.   
  430.      ---------- Footnotes ----------
  431.   
  432.      (1)  Die Anführungsstriche sind wesentlich! Wenn _PCHAR bereits
  433.   gesetzt ist, wird sonst angenommen, es handele sich bereits um einen
  434.   Aufruf von Pipe. Dies kann etwa dann geschehen, wenn aus einer Shell
  435.   eine neue gestartet wird.
  436.   
  437.   2.3.4 Die _mchar-Variable
  438.   -------------------------
  439.   
  440.      Die lokale Variable _mchar legt das Zeichen fest, das als
  441.   Kommandotrenner dient. Setzt man also
  442.            1> Set _mchar ";"
  443.      dann kann man in der Shell die Befehle hintereinanderfügen, durch
  444.   den Strichpunkt getrennt.
  445.   
  446.   2.3.5 Bekannte Probleme
  447.   -----------------------
  448.   
  449.   *F:*
  450.        Ich bekomme die Fehlermeldung
  451.                 PIPE: Unknown command
  452.   
  453.        wenn ich das Kommando `List SYS: | More' ausführe, obwohl `PIPE:'
  454.        mit `Mount' angemeldet ist. Was ist falsch?
  455.   
  456.   *A:*
  457.        Die Shell sucht nach dem Kommando `Pipe' in der Fehlermeldung,
  458.        nicht nach dem `PIPE:'-Device. Dieses Kommando ist also nicht im
  459.        Suchpfad (meist in `C:') installiert.
  460.   
  461.   *F:*
  462.        Ein Requester meldet
  463.                 Please insert volume PIPE: in any drive
  464.   
  465.        wenn ich eines der Kommandos aus den Beispielen ausführen will.
  466.   
  467.   *A:*
  468.        `PIPE:' ist nicht angemeldet. Dies kann mit `Mount PIPE:'
  469.        geschehen.
  470.   
  471.   *F:*
  472.        Wenn ich eines der Beispiele ausführe, dann eröffnet das
  473.        `More'-Kommando ein Fenster, aber dort erscheint nichts/ eine
  474.        Fehlermeldung erscheint/ein Filerequester erscheint.
  475.   
  476.   *A:*
  477.        Sie verwenden ein anderes More-Kommando als das aus der Workbench.
  478.        Verwenden Sie einen anderen Namen oder installieren Sie ein More,
  479.        das Pipes unterstützt, z.B. das More von Commodore, Less oder
  480.        Most.
  481.   
  482.   3 Grafik
  483.   ********
  484.   
  485.      Grafik ist eine der Stärken des Amiga. Warum hat es hier so wenig
  486.   Fragen und Antworten?
  487.   
  488.   3.1 Was heißt Chunky- und Planar-Display?
  489.   =========================================
  490.   
  491.      Einfach gesagt stehen die Bezeichnungen `chunky' und `planar'
  492.   (Kürzel für `bitplanar') für verschiedene Arten, graphische Daten im
  493.   RAM des Computers zu speichern. Sie sind einfach zu verstehen, aber
  494.   vielleicht etwas schwierig zu erklären.
  495.   
  496.      Die Anzeige eines Computers besteht aus einem Netz von Pixeln. Jedes
  497.   Pixel kann man sich als eine Zahl denken, die für die Farbnummer des
  498.   Pixels steht.  Hier ist zum Beispiel eine ganz einfache Anzeige mit 4
  499.   Farben:
  500.   
  501.           00302132
  502.   
  503.      Der Amiga speichert dies im `bitplanaren' Modus, d.h. es werden
  504.   verschiedene sogenannte Bitplanes verwendet, in denen zu jedem Pixel
  505.   genau ein Bit gehört. Für eine Zahl zwischen 0 und 3 brauchen wir 2
  506.   Bits, also auch zwei Bitplanes, die dann so aussehen:
  507.   
  508.           00100110    Dies ist Bitplane 0
  509.           00101011    Dies ist Bitplane 1
  510.           --------    Nun addieren wir sie, wobei wir die zweite mit 2
  511.           00302132    multiplizieren
  512.   
  513.      Das ist also die gewünschte Grafik. Nun gäbe es aber natürlich
  514.   auch eine andere Möglichkeit: Wir könnten die jeweils 2 Bits direkt
  515.   hintereinander anordnen in sogenannten Chunks:
  516.   
  517.           00 00 11 00 01 10 11 01 = 00302132
  518.   
  519.      Dies ist das Prinzip des Chunky-Modus. Man kann im allgemeinen kaum
  520.   sagen, daß eine dieser beiden Methoden besser oder schlechter ist.
  521.   Allerdings haben natürlich beide ihre Vor- und Nachteile:
  522.   
  523.      Zunächst hat vielleicht jeder schon einmal gesehen, daß auf dem
  524.   Amiga beim Scrollen von farbigem Text ein gewisses Flackern entsteht.
  525.   Genauer gesagt ändern sich kurz die Farben. Was dabei passiert, ist,
  526.   daß der Computer Bitplanes verschiebt, gleichzeitig aber dieselben
  527.   Daten für die Anzeige verwendet werden. Wenn etwa gerade Bitplane 0
  528.   verschoben wurde, aber Bitplane 1 noch nicht verschoben ist, so hätten
  529.   wir kurzfristig im obigen Beispiel die folgende Anzeige:
  530.           01001100    Dies ist Bitplane 0 (nach links verschoben)
  531.           00101011    Dies ist Bitplane 1
  532.           --------    Nun addieren wir sie wieder
  533.           01203122
  534.      Sobald die zweite Bitplane ebenfalls verschoben ist, stimmt wieder
  535.   alles, aber kurzfristig entsteht dabei eben jenes Flackern. Bei einer
  536.   Chunky-Anzeige dagegen wäre eben nur ein Teil des Bildschirms schon
  537.   verschoben und ein anderer Teil noch nicht.
  538.   
  539.      Umgekehrt ist es im Chunky-Modus schlecht möglich, mit beliebiger
  540.   Anzahl von Farben zu arbeiten: Da ein Byte 8 Bits hat, gehören etwa
  541.   bei 4 Farben zu jedem Byte 4 Pixel. Man muß also stets erst berechnen
  542.   an welcher Stelle des Bytes die Informationen zu einem bestimmten Pixel
  543.   sitzen. Das ist aufwendig. Noch schlimmer wird die Sache bei 8 Farben:
  544.   Da beginnen die Pixel noch nicht mal an der gleichen Stelle. Das ist
  545.   sehr umständlich und rechenzeitaufwendig. In der Praxis gibt es daher
  546.   Chunky-Anzeigen nur im 8-Bit-Modus (256 Farben) und im 24-Bit-Modus (16
  547.   Millionen Farben). Es ist allerdings möglich, daß die Anwender da gar
  548.   nicht so unglücklich darüber sind...
  549.   
  550.   3.2 Was ist Doublebuffering?
  551.   ============================
  552.   
  553.      Bei animierter Grafik entsteht das Problem, daß gleichzeitig die
  554.   Daten verändert und angezeigt werden. Dabei kommt es dann unweigerlich
  555.   zu einem gewissen Flackern. (siehe Chunky vs. Planar)
  556.   
  557.      Die Lösung des Problems ist es, quasi zwei Bildschirme zu benutzen:
  558.   Der eine wird immer angezeigt. Gleichzeitig wird auf dem anderen
  559.   Bildschirm, der nicht angezeigt wird, das neue Bild gezeichnet. Es gibt
  560.   kein Flackern, da die Grafik-Hardware nur auf das RAM des ersten
  561.   Bildschirms zugreift und der Prozessor nur auf das des zweiten. Dann
  562.   wird umgeschaltet und der zweite Bildschirm angezeigt. Auf dem ersten
  563.   kann jetzt gezeichnet werden.
  564.   
  565.   3.3 Was für Monitore arbeiten am Amiga 1200 oder 4000?
  566.   ======================================================
  567.   
  568.      Monitore kann man klassifizieren nach der horizontalen Frequenz, die
  569.   sie für ihre Anzeige benötigen. Fernseher und Commodore's 1084
  570.   benötigen z.B.  etwa 15 kHz, VGA und SVGA benötigen mindestens etwa 30
  571.   kHz.  Multisync-Monitore können verschiedene Frequenzen darstellen.
  572.   
  573.      Man kann also jeden dieser Monitore am A1200 verwenden, *aber*:
  574.   
  575.      - Mit einem gewöhnlichen VGA/SVGA-Monitor kann man nur einige
  576.        Anzeige-Modi (DblPal, DblNTSC und/oder Productivity, d.h.
  577.        (320|640) x (256|512|1024) Pixel) verwenden. Dies ist großartig
  578.        für die Workbench und die meisten ernsthaften Anwendungen, aber
  579.        manche grafikorientierten Programme, vor allem Spiele laufen fast
  580.        sicher nicht: Sie benutzen nämlich die Preferences nicht,
  581.        übernehmen statt dessen einfach die Maschine und gehen von einem
  582.        15 kHz Monitor aus. Ferner kann man das Bootmenü nicht verwenden:
  583.        Das arbeitet nämlich ebenfalls nur mit 15 kHz. Schließlich haben
  584.        VGA-Monitore keine Lautsprecher und die VGA-artigen Modi
  585.        unterstützen keine Genlocks.
  586.   
  587.      - Das größte Problem eines 15 kHz-Monitors ist das ständige
  588.        Flickern im Interlace-Modus. Ein kleiner Tip ist hier die
  589.        Verwendung von NTSC anstelle von PAL. Dies erhöht die
  590.        Refresh-Rate von 25 Hz auf 30 Hz, kostet allerdings einige
  591.        darstellbare Zeilen. (Maximal möglich sind 482.) Die NTSC- und
  592.        PAL-Modi sind aber nicht so schlecht, wie die Leute denken: Bei
  593.        einem Monitor mit viel Phosphor (der also lange nachglüht) ist
  594.        PAL-Laced einigermaßen akzeptabel und gibt eine Auflösung von
  595.        1448x566 in SuperHiRes. Mehr ist auf keinem AGA-Amiga möglich.
  596.   
  597.      - Die beste Lösung sind die Multisync-Monitore, vorausgesetzt sie
  598.        unterützen die Bereiche von 15-31 kHz Horizontal- und 50-72
  599.        Vertikalfrequenz. Die 1940- und 1942-Monitore von Commodore sind
  600.        nicht schlecht, allerdings etwas umständlich zu handhaben: Bei
  601.        jedem Umschalten des Anzeige-Modus muß man nämlich auch die
  602.        horizontale/vertikale Größe und den Offset von Hand einstellen.
  603.        (1) Geeignet sind z.B. auch der Mitsubishi EUM 1491 oder der EIZO
  604.        9060S.
  605.   
  606.        Der Commodore 1960 hat nicht das Problem von 1940 oder 1942, ist
  607.        aber auch teurer.
  608.   
  609.      Für einen VGA/SVGA- oder Multisync-Monitor braucht man ein Kabel,
  610.   das etwa 30 DM kostet.
  611.   
  612.      ---------- Footnotes ----------
  613.   
  614.      (1)  Es gibt einen Patch, der dies auch ohne manuelle Eingriffe
  615.   möglich macht. Siehe `os30/util/Monitor30Patch.lha' auf dem Aminet.
  616.   
  617.   4 Programmierung
  618.   ****************
  619.   
  620.      In diesem Kapitel finden vermutlich nur Programmierer Interessantes.
  621.   
  622.   4.1 Was ist die beste Dokumentation für Programmierer?
  623.   ======================================================
  624.   
  625.      Die beste verfügbare Dokumentation sind sicherlich die RKM's (ROM
  626.   Kernel Manuals, die schwarzen) von Commodore. Sie werden von
  627.   Addison-Wesley veröffentlicht.
  628.        The Amiga ROM Kernel Manual:  Libraries, ISBN 0-201-56774-1
  629.        The Amiga ROM Kernel Manual:  Devices, ISBN 0-201-56775-X
  630.        The Amiga ROM Kernel Manual:  Includes and Autodocs, ISBN
  631.                                                             0-201-56773-3
  632.        The Amiga Hardware Manual, ISBN 0-201-56776-8
  633.        The Amiga User Interface Style Guide, ISBN 0-201-57757-7
  634.   
  635.   Vor allem die Libraries sind ein Muß. Weniger nützlich sind die
  636.   Includes und Autodocs: Sie sind auf Diskette als Online-Hilfe sicher
  637.   nützlicher.  Siehe Include-Dateien.
  638.   
  639.      AmigaDOS wird in diesen Büchern kaum behandelt. Die Autodocs geben
  640.   einige Informationen, aber um tiefer einzusteigen braucht man das
  641.        The AmigaDOS Manual, 3rd Edition, ISBN 0-553-35403-5
  642.   
  643.   ebenfalls von Commodore, das von Bantam Books herausgegeben wird.
  644.   
  645.      Eine gute Wahl ist auch
  646.        The Amiga Guru Book
  647.   
  648.   von Ralph Babel. Das Buch beginnt mit einem ca. 250-seitigen
  649.   allgemeinen Überblick über verschiedenste Aspekte der Programmierung
  650.   des Amiga. Für Anfänger dürften vor allem die Abschnitte über die
  651.   Amiga-Datentypen sowie die Amiga-Includes und die amiga.lib interessant
  652.   sein, aber auch Erfahrene finden hier mit Sicherheit noch Neues, was
  653.   zum Teil nicht einmal in den RKM's enthalten ist. Den größten Teil
  654.   des Buches nehmen aber 500 Seiten nur zu AmigaDOS ein. Dieser Teil ist
  655.   meines Erachtens der wichtigste, weil das AmigaDOS-Manual der
  656.   schlechteste Teil der offiziellen Dokumentation ist. Das Buch ist sehr
  657.   dicht geschrieben und deshalb weniger leicht lesbar als die RKM's, aber
  658.   ich empfehle es als Zusatz und vor allem anstelle des AmigaDOS-Manuals.
  659.   (Allerdings ist das Guru-Buch kein Ersatz für die Libraries & Devices,
  660.   die hier nicht behandelt werden.) Unglücklicherweise hat das Buch
  661.   keine ISBN-Nummer und ist deshalb nur bei den folgenden Adressen
  662.   erhältlich:
  663.   
  664.                                    Almathera Systems Limited
  665.                                    Southerton House
  666.        NBG USA, Inc.               Boundary Business Court
  667.        482 Holly Avenue            92-94 Church Road
  668.        St. Paul, MN 55102          Mitcham, Surrey CR4 3TD
  669.        USA                         England
  670.        Voice: +1 (612) 290 9447    Voice: +44 181 687 0040
  671.        Fax:   +1 (612) 290 9449    Fax:   +44 181 687 0490
  672.                                    E-Mail: <almathera@cix.compulink.co.uk>
  673.        
  674.                                    Stefan Ossowskis Schatztruhe
  675.        Hirsch & Wolf OHG           Gesellschaft für Software mbH
  676.        Mittelstraße 33             Veronikastraße 33
  677.        D-56564 Neuwied             D-45131 Essen
  678.        Germany                     Germany
  679.        Voice: +49 (2631) 8399-0    Voice: +49 (201) 788778
  680.        Fax:   +49 (2631) 8399-31   Fax:   +49 (201) 798447
  681.                                    E-Mail: <stefano@tchest.e.eunet.de>
  682.        
  683.        Someware
  684.        27 rue Gabriel Péri
  685.        59186 Anor
  686.        France
  687.        Voice: +33 27596000
  688.        Fax:   +33 27595206
  689.        E-Mail: <didierj@swad.someware.com>
  690.   
  691.      Für weitere Informationen empfehle ich auch die FAQ von Marc Atkins
  692.   über Bücher zum Thema Amiga, die alle 4 Wochen in
  693.   `comp.sys.amiga.misc' erscheint.
  694.   
  695.   4.2 Was ist CATS?
  696.   =================
  697.   
  698.      Dies ist eine Abteilung von Commodore West Chester, die früher
  699.   `Commodore Amiga Technical Support' hieß und später in `Commodore
  700.   Application and Technical Support' umbenannt wurde. Die Mitglieder
  701.   arbeiten unabhängig von der Entwicklungsabteilung, aber eng mit ihr
  702.   zusammen, und versuchen, Entwicklern außerhalb von Commodore beim
  703.   Erstellen guter Amiga-Anwendungen zu helfen, sei das eine Hard- oder
  704.   Software. Dazu hat CATS eine Menge an Informationen und Tools
  705.   gesammelt, auf Floppy, CD oder Papier. Ein großer Teil dieses
  706.   Materials ist auch der Allgemeinheit, d. h. für Nicht-Developer
  707.   zugänglich. Aber bitte CATS nicht mit einer Hotline verwechseln!
  708.   
  709.      Amerikaner können das Material von
  710.            CATS
  711.            Commodore Electronics Limited
  712.            950 Rittenhouse Road
  713.            Norristown, PA 19403
  714.   
  715.   bekommen, der Distributor für ganz Europa ist die
  716.            Fa. Hirsch & Wolf
  717.            Mittelstr. 33
  718.            56564 Neuwied
  719.            Tel. 02631/83990
  720.   
  721.      Dr. Peter Kittel, peterk@cbmger.de.so.commodore.com
  722.   
  723.   4.3 Wo bekomme ich die Amiga-Include-Dateien?
  724.   =============================================
  725.   
  726.      Der einzige legale Weg, die Include-Dateien und die AutoDocs zu
  727.   bekommen (und Sie sollten sie bekommen, sie sind *sehr* nützlich!),
  728.   ist, Developer zu werden (siehe siehe Developer) oder das sogenannte
  729.   `NDU' (Native developers update kit, auch als `NDUK', `NDK' bekannt oder
  730.   `ADU' für Amiga Developer Update) bei CATS zu kaufen. Siehe CATS. Es
  731.   kostet etwa 50DM, was sicher ein fairer Preis ist. Dabei handelt es
  732.   sich um ein 5-Disketten-Set, das neben den aktuellen Includes und
  733.   AutoDocs auch Tools für Programmierer, z.B. Enforcer, Mungwall, Sushi
  734.   und die debug.libg (zum Debuggen) sowie anderes, z.B. CatComp (siehe
  735.   Lokalisierung) oder Report (für Bug-Reports oder Vorschläge an
  736.   Commodore) enthält. Die aktuelle Version ist 3.1 und für
  737.   Programmierer beinahe obligatorisch.
  738.   
  739.      Wem die Includes genügen, der kann diese über ein Update seines
  740.   Compilers (nur kommerzielle Compiler) oder von den Fish-CDs bekommen.
  741.   Siehe Fish-CD.
  742.   
  743.   4.4 Wie werde ich Developer?
  744.   ============================
  745.   
  746.      Um Developer zu werden, braucht man die `ADSP'-Antragsformulare
  747.   (Amiga developer support program). Um diese zu bekommen, sollte man
  748.   einen Brief an die lokale Commodore-Niederlassung schreiben und nach
  749.   diesen Papieren fragen, in denen das weitere erklärt wird. In
  750.   Deutschland ist die Adresse folgende:
  751.            Commodore
  752.            Lyoner Straße 38
  753.            60528 Frankfurt
  754.      Es gibt drei verschiedene Arten von Developern:
  755.   *Registered*
  756.        Hier bekommt man vor allem Zugang zum CBMNET (eine Art
  757.        Commodore-internes Usenet), über das man direkt mit anderen
  758.        Entwicklern auch von Commodore selber über seine Probleme
  759.        diskutieren kann. Die Jahresgebühr beträgt 150 DM, die einmalige
  760.        Aufnahmegebühr 50 DM.
  761.   
  762.   *Certified*
  763.        Dies ist die interessanteste Klasse: Man bekommt von der meisten
  764.        Systemsoftware die aktuellen Beta-Versionen (z. B. Kickstart und
  765.        Workbench) sowie die dazugehörigen Includes und AutoDocs.
  766.        Certifieds bekommen aber nicht jede Beta und in der Regel auch
  767.        keine Hardware-Beta. Man bezahlt 400 DM pro Jahr dafür und eine
  768.        einmalige Aufnahmegebühr von 100 DM.
  769.   
  770.   *Commercial*
  771.        Kommerzielle Entwickler bekommen im wesentlichen dieselben
  772.        Informationen wie die "Zertifizierten", allerdings kompletter,
  773.        sprich auch Beta-Hardware, und etwas früher. Dies hat auch seinen
  774.        Preis: 700DM pro Jahr plus einmalige Aufnahmegebühr von 100DM.
  775.   
  776.   Die Preise und die angebotenen Möglichkeiten können von Land zu Land
  777.   verschieden sein, auch gibt es meines Wissens nicht in allen Ländern
  778.   den "Registered". Ein guter Tip ist es, eine Gruppe zu bilden und damit
  779.   die Kosten zu reduzieren.
  780.   
  781.      Alle Entwickler müssen Non-disclosure agreements (`NDA')
  782.   unterzeichnen.  Diese besagen, daß sie über die erhaltenen
  783.   Informationen außerhalb von speziell dazu freigegebenen Orten oder
  784.   Kanälen nicht einmal zu anderen Entwicklern sprechen dürfen, so lange
  785.   sie nicht die explizite Erlaubnis dazu von Commodore haben.
  786.   
  787.   4.5 Was für Compiler (und Assembler) gibt es?
  788.   =============================================
  789.   
  790.      Es gibt viele Programmiersprachen auf dem Amiga, kommerzielle
  791.   Compiler ebenso wie frei kopierbare. Ich möchte nur diejenigen
  792.   aufzählen, die mir bekannt sind oder die ich aus einem anderem Grund
  793.   für erwähnenswert halte.
  794.   
  795.   *Assembler*
  796.        Alle C-Compiler beinhalten einen Assembler. Frei kopierbar und
  797.        zuverlässig sind A68K und PhxAss. (Aminet, Directory `dev/asm'
  798.        oder Fish-Disks 521 bzw. 906)
  799.   
  800.        Kommerzielle Assembler sind MaxonASM, OMA3.0 und DevPack3.14.
  801.   
  802.   *Basic*
  803.        Derzeit sind folgende kommerzielle Basic-Compiler/Interpreter
  804.        verfügbar: BlitzBasic2, Amos und MaxonBasic3.
  805.   
  806.   *C*
  807.   *C++*
  808.        Frei kopierbare C-Compiler sind der `gcc' (der sein eigenes
  809.        Directory `dev/gcc' auf dem Aminet hat) und die Probeversion (mit
  810.        der man aber schon eine ganze Menge anfangen kann) von `Dice' (per
  811.        FTP von `ftp.uni-paderborn.de', Directory
  812.        `/news/comp.binaries.amiga/volume91/languages' oder auf Fish disk
  813.        491).  Der große Vorteil von gcc ist, daß man ihn auf der ganzen
  814.        Welt und auf nahezu jedem Computer findet. Ein weiterer Vorteil
  815.        ist, daß er sogar einen C++-Compiler enthält! Aber er ist
  816.        langsam und benötigt 4MB RAM oder mehr. Siehe Der GNU C Compiler.
  817.        Siehe Mail-Listen.
  818.   
  819.        Kommerzielle C-Compiler sind `Aztec-C', `Dice', `SAS-C' und
  820.        `MaxonC++'.  `Aztec-C' wird jedoch leider nicht mehr
  821.        weiterentwickelt.  Was die kommerziellen Compiler auszeichnet,
  822.        sind ihre hervorragenden Source-Level-Debugger, die den anderen
  823.        fehlen.
  824.   
  825.        SAS hat leider angekündigt, den Amiga-Compiler nicht weiter zu
  826.        unterstützen. Verkauft wird er aber noch, und da er gegenwärtig
  827.        noch voll aktuell ist und sogar einen Crosscompiler von C++ in C
  828.        enthält (der vom Debugger unterstützt wird), ist er meines
  829.        Erachtens derzeit das beste Angebot, insbesondere zu dem äußerst
  830.        günstigen Preis von 184.-DM für Studenten und Besitzer anderer
  831.        Compiler. In Deutschland erhält man SAS/C bei
  832.                 SAS Institute, Inc.         SAS Institute GmbH
  833.                 Book Sales                  Postfach 10 53 40
  834.                 SAS Campus Drive            69043 Heidelberg
  835.                 Cary, NC 27513              Deutschland
  836.                 USA
  837.             
  838.                 Phone: (919)677-8000        Telefon: 06221/4160
  839.                 EMail: sasdsb@vm.sas.com    EMail: eurdoc2@vm.sas.com
  840.   
  841.        Dice bietet wie SAS einen Sonderpreis für Schüler und Studenten
  842.        von ca. 130.-DM. Der Compiler ist stabil und vor allem sehr
  843.        schnell.  Der größte Nachteil von Dice ist (verglichen mit den
  844.        anderen kommerziellen Compilern) der Debugger, ein sogenannter
  845.        Source-Line-Debugger: Dies bedeutet, daß man den Quelltext sieht
  846.        und das Programm Schritt für Schritt abarbeiten kann, aber leider
  847.        nur Speicher und nicht etwa bestimmte Variablen anzeigen kann.
  848.        Informationen über Dice: info@oic.COM.
  849.   
  850.        Comeau C++ ist ebenfalls ein Crosscompiler, was an und für sich
  851.        kein Problem wäre. Aber Comeau C++ hat keinen integrierten
  852.        C-Compiler, man braucht also zusätzlich SAS-C, Aztec-C oder Dice.
  853.        Dafür ist er kompatibel zu AT&T cfront 3.0, unterstützt
  854.        Exceptions und läuft wie `gcc' auf vielen verschiedenen Systemen.
  855.        In Deutschland wird auch Maxxon C++ angeboten, über das ich
  856.        nichts sagen kann. Beide Compiler sind kommerziell. Comeau's
  857.        Adresse ist:
  858.                 Comeau computing
  859.                 91-34, 120th Street
  860.                 Richmond Hill, NY, 11418-3214
  861.                 USA
  862.             
  863.                 EMail: Greg Comeau, comeau@bix.com
  864.   
  865.        MaxonC++ ist sowohl ein C++ als auch ein C Compiler. Es gibt eine
  866.        Light-Version für ca. 190 DM und eine Developer-Version für ca.
  867.        450 DM.  Die Developer-Version entspricht dem AT&T-Standard 3.0.
  868.        Maxon-Light enthält einen Compiler und einen Editor.  Developer
  869.        umfaßt einen Source-Level-Debugger, eine Amiga-Klassenbibliothek
  870.        und Hot Help mit Dokumenten zu den Amiga-Libs.  Da es ein
  871.        deutsches Produkt ist, sind Compiler und Dokumentation in Deutsch
  872.        gehalten. Der Compiler besitzt einige kleinere Fehler, trotzdem
  873.        kann man mit ihm gut arbeiten.
  874.   
  875.   *Forth*
  876.        JForth soll eine exzellente Forth-Version sein. Unter anderem
  877.        enthält es objektorientierte Erweiterungen, ein volles
  878.        Amiga-Interface und einen Anwendungsgenerator. Es ist erhältlich
  879.        von:
  880.                 Delta Research
  881.                 P.O. Box 151051
  882.                 San Rafael, CA   94915-1051
  883.             
  884.                 Phone: (415) 453-4320
  885.                 EMail: Phil Burk, phil@ntg.com
  886.                        Mike Haas, haas@starnine.com
  887.   
  888.   *Fortran*
  889.        (Seufz! Es gibt immer noch Leute, die es brauchen :-<) Frei
  890.        kopierbar sind BCF (Fish disk 470) und f2c, der Fortran in
  891.        C-Quelltext umwandelt.  (Aminet, Directory `/dev/lang'). Ein
  892.        kommerzieller Compiler ist von ABSoft erhältlich. Allerdings sind
  893.        dies alles nur Fortran-77-Compiler, es gibt keine
  894.        Fortran-90-Compiler auf dem Amiga.
  895.   
  896.   *Lisp*
  897.        Frei kopierbare Lisp-Interpreter sind XLisp (Fish-Disk 181) und
  898.        OakLisp (Fish-Disks 519 und 520) und CLISP
  899.        (`/pub/lisp/clisp/binaries/amiga' at
  900.        `ma2s2.mathematik.uni-karlsruhe.de'). Auch Compiler gibt es: Gambit
  901.        (Fish-Disks 764 und 765) sowie Scheme-to-C (Fish-Disks 556-558).
  902.        Von Interesse ist vielleicht eine Mail-Liste: Senden Sie dazu eine
  903.        Mail mit dem Wort `Subscribe' an `amigalisp@contessa.phone.net'.
  904.   
  905.   *Prolog*
  906.        `/dev/lang/UNSWProlog.lha' und `dev/lang/sbp3_1e' auf dem Aminet
  907.        sowie `SBProlog' auf der Fish-Disk 141 und `SBProlog' auf der
  908.        Fish-Disk 145 sind frei kopierbare Prolog-Interpreter.
  909.   
  910.   *Modula-2*
  911.        M2Amiga wird in Europa und Benchmark Modula-2 in den USA
  912.        angeboten. Beide sollen sehr gut sein und sowohl über gute
  913.        Source-Level-Debugger als auch eine umfangreiche Bibliothek
  914.        verfügen. Besonders M2Amiga wird sehr gut unterstützt durch eine
  915.        deutsche Benutzergruppe (AMOK), die z.B. eine eigene PD-Serie
  916.        anbieten. Siehe Mail-Listen.
  917.   
  918.        M2Amiga bekommt man bei
  919.                 A+L AG
  920.                 Daderiz 61
  921.                 2540 Grenchen
  922.                 Schweiz
  923.             
  924.                 Tel.: +41/65/52 03-11
  925.                 Fax:              -79
  926.   
  927.        und Benchmark Modula-2 ist erhältlich von:
  928.                 Armadillo Computing
  929.                 5225 Marymount Drive
  930.                 Austin, Texas 78723
  931.                 USA
  932.             
  933.                 Phone/FAX: 512/926-0360.
  934.                 EMail: Jim Olinger, jolinger@bix.com
  935.   
  936.   *Oberon*
  937.   *Oberon-2*
  938.        Es gibt zwei Oberon-2-Compiler für den Amiga: AmigaOberon ist wie
  939.        M2Amiga von A+L und kommerziell. Der Compiler kommt mit einer
  940.        integrierten Entwicklungsumgebung (incl. freikonfigurierbarem
  941.        Editor) und umfangreicher Modulbibliothek. Library Linker zum
  942.        einfachen Erzeugen von AmigaOS Shared Libraries sowie Run-time
  943.        Source-Level-Debugger sind ebenfalls erhältlich.
  944.   
  945.        Oberon-A ist ein Freeware-Compiler, allerdings erst in einer
  946.        Beta-Version, insbesondere sind die Modulbibliotheken
  947.        unvollständig. (Quelle: Aminet, Directory `dev/obero'). Siehe
  948.        Mail-Listen.
  949.   
  950.        Für beide Compiler gibt es Unmengen von Modulen und Bsp.-Sourcen
  951.        auf AMOK-Disks.
  952.   
  953.        Zusätzlich zu den beiden Standalone-Compilern, die vor allem zum
  954.        Entwickeln von AmigaOS-Applikationen geeignet sind, existiert noch
  955.        eine Portierung des Oberon System V4, das ebenfalls einen Oberon-2
  956.        Compiler beinhaltet. Das Oberon System läuft auf dem Amiga als ein
  957.        AmigaOS-Task auf einem eigenen Screen. Hiermit kann man Software
  958.        entwickeln, die auch auf allen anderen Implementierungen des Oberon
  959.        System V4 (z.B. für Macintosh, Windows oder Sparc) nahezu ohne
  960.        jede Änderung lauffähig ist.
  961.   
  962.   *Pascal*
  963.        Es gibt einen PD-Compiler namens PCQ (Aminet, Directory `dev/lang'
  964.        oder Fish-Disk 511), der allerdings kein voller Pascal-Compiler
  965.        ist und dem sehr wesentliche Dinge fehlen. P2C konvertiert Pascal
  966.        in C und ist auf der Fish-Disk 341 zu finden. (Aminet:
  967.        `/dev/misc/p2c120.lha') Ferner gibt es zwei kommerzielle Compiler
  968.        namens HiSoft-Pascal (von der gleichnamigen Firma) und KickPascal
  969.        von Maxxon. HiSoft und P2c behaupten, kompatibel zu Turbo-Pascal
  970.        5.0 zu sein. HiSoft hat außerdem einen guten
  971.        Source-Level-Debugger.
  972.   
  973.   4.6 Warum funktioniert keine Esc-Sequenz?
  974.   =========================================
  975.   
  976.      Viele Drucker kommen mit einem Handbuch, das erklärt, welche
  977.   Esc-Sequenzen welche Funktion auslösen. Aber wenn man diese Sequenzen
  978.   dann einmal ausprobiert, passieren oft merkwürdige Sachen, nämlich
  979.   entweder gar nichts oder etwas ganz anderes, als geplant war. Und das
  980.   hat auch einen Grund, nämlich die Amiga-Druckertreiber. Diese Treiber
  981.   sind so gebaut, daß sie nur einen bestimmten Satz `ANSI-Esc-Sequenzen'
  982.   verstehen, nicht die (verschiedenen) druckereigenen, von den
  983.   verschiedenen Druckerherstellern definierten. Der Sinn dabei ist, daß
  984.   jede Anwendung auf dem Amiga nur diesen einen Standardsatz an Sequenzen
  985.   verwendet und so nicht zu wissen braucht, welcher Drucker tatsächlich
  986.   angeschloßen ist. Der Druckertreiber übersetzt dann diese
  987.   Standardsequenzen in die druckereigenen. Eine Liste der verfügbaren
  988.   ANSI-Esc-Sequenzen findet sich im aktuellen Workbench-Handbuch (oder in
  989.   älteren AmigaDOS-Handbüchern). Wenn Du nun eine Steuersequenz an den
  990.   Drucker schicken willst, die es nicht als ANSI-Sequenz gibt, so hast Du
  991.   zwei Möglichkeiten, dies doch zu erreichen:
  992.     1. Umgeh den Druckertreiber (der erfolglos versuchen würde, die
  993.        Sequenz zu interpretieren oder zu übersetzen) und sende die
  994.        Ausgabe *nur* für die Länge dieser Sequenz an `PAR:' (bzw.
  995.        `SER:'). Dabei muß man die Druckerausgabekanäle umständlich oft
  996.        umschalten, und man muß wissen, wo der Drucker angeschlossen ist
  997.        (`PAR:' oder `SER:').
  998.   
  999.     2. Benutze eine spezielle ANSI-Sequenz, genau für diesen Fall
  1000.        gedacht:
  1001.                 `Esc[<n>"<x>'
  1002.        wobei `<n>' die dezimal geschriebene Anzahl an Bytes in der Sequenz
  1003.        `<x>' ist, die gerade die spezielle Drucker-Sequenz enthält. Diese
  1004.        ANSI-Sequenz sagt dem Druckertreiber, daß er die nächsten `<n>'
  1005.        Bytes nicht interpretieren oder übersetzen soll.
  1006.           Aber beide Methoden haben einen grossen Nachteil, wenn sie in
  1007.   einem Anwendungsprogramm verwendet werden: Man verliert die
  1008.   Druckerunabhängigkeit! Solange man sich an die ANSI-Sequenzen hält,
  1009.   kann man jeden Drucker der Welt ansteuern, solange es einen
  1010.   Amiga-Druckertreiber für ihn gibt.  Wenn man anfängt, druckereigene
  1011.   Sequenzen zu verwenden, ist das Programm an diesen einen Druckertyp
  1012.   gebunden und mit keinem anderen benutzbar (oder man müßte einige
  1013.   dutzend neue Druckertreiber für dieses Programm erstellen).
  1014.   
  1015.      Dr. Peter Kittel, peterk@cbmger.de.so.commodore.com
  1016.   
  1017.   4.7 Kann ich AmigaBasic auf dem A1200 verwenden?
  1018.   ================================================
  1019.   
  1020.      Letztens ging eine Kontroverse über AmigaBasic durch die Netze: Ich
  1021.   sagte, auf dem A1200 läuft es einigermaßen problemlos, jemand anders
  1022.   berichtete, daß es bei jedem kleinsten Fehler sofort komplett
  1023.   abstürzt, was ich nicht nachvollziehen konnte.
  1024.   
  1025.      Jetzt kann ich es: Es liegt am Sound-Prefs-Editor. Wenn man in ihm
  1026.   die Sound-Ausgabe ganz abschaltet, kann man mit AmigaBasic arbeiten.
  1027.   Wenn hier ein Sound (z. B. Piepsen) angewählt ist, kollidiert das mit
  1028.   dem Sound, den AmigaBasic offensichtlich zu Fuß und nicht ganz korrekt
  1029.   selber erzeugen will, bumm.
  1030.   
  1031.      Abhilfe also:
  1032.     1. Im Sound-Editor den Ton abstellen.
  1033.   
  1034.     2. Auf einem A4000 (oder einem A1200 mit Fast-RAM-Erweiterung (1))
  1035.        muß man zusätzlich NoFastMem aktivieren.
  1036.   
  1037.     3. Möglichst SUBs vermeiden und stattdessen herkömmliche GOSUBs
  1038.        benutzen, dann ist die Kompatibilität zu neueren Prozessoren
  1039.        höher.
  1040.   
  1041.      Dr. Peter Kittel, peterk@cbmger.de.so.commodore.co
  1042.   
  1043.      ---------- Footnotes ----------
  1044.   
  1045.      (1)  Nur bei einem zusätzlichen Prozessor
  1046.   
  1047.   4.8 Wie lokalisiere ich mein Programm?
  1048.   ======================================
  1049.   
  1050.      Nehmen wir an, wir wollen ein `HelloLocalWorld.c' schreiben. Das
  1051.   letztendliche Programm sieht dann ungefähr so aus:
  1052.   
  1053.            #include "HelloLocalWorld_Cat.h"
  1054.            #include <clib/exec_protos.h>
  1055.        
  1056.            struct Library *LocaleBase;
  1057.        
  1058.            void main(int argc, char *argv[])
  1059.        
  1060.            {
  1061.                /* Öffne die locale.library. (Kein Abbruch, wenn sie nicht
  1062.                   da ist, weil dann einfach die eingebauten Strings verwendet
  1063.                   werden. Aus diesem Grund auch keine Verwendung des
  1064.                   AutoOpening, auch wenn es der Compiler beherrscht.)
  1065.                */
  1066.                LocaleBase = OpenLibrary("locale.library", 38);
  1067.                OpenHelloLocalWorldCatalogs(NULL, NULL);
  1068.        
  1069.                printf(GetString(MSG_Hello));
  1070.        
  1071.                CloseHelloLocalWorldCatalog();
  1072.                if (LocaleBase) CloseLibrary(LocaleBase);
  1073.            }
  1074.   
  1075.      Die Funktion GetString prüft, ob die gewünschten Kataloge
  1076.   vorhanden sind und liefert einen Zeiger auf einen String, entweder den
  1077.   eingebauten oder den Katalogstring. (In unserem Fall den deutschen
  1078.   String.)
  1079.   
  1080.      Der Hauptunterschied zum gewohnten HelloWorld.c ist also (abgesehen
  1081.   von der minimalen Initialisierung und dem Gegenstück am Programmende,
  1082.   das bei den meisten modernen Programmiersprachen oder unter C mit Hilfe
  1083.   des FlexCat-Paketes sogar auch noch entfällt), Strings durch einen
  1084.   Funktionsaufruf zu ersetzen. Man braucht also eine Datei
  1085.   `HelloLocalWorld_Cat.c', die die Funktionen OpenHelloLocalWorld,
  1086.   GetString, CloseHelloLocalWorld_Cat.h und die eingebauten Strings
  1087.   enthält (dies könnte ein Array sein, das unter anderem
  1088.                array[MSG_Hello] = "Hello, local world.\n";
  1089.   
  1090.   enthält) und ein Includefile `HelloLocalWorld_Cat.h', das die ID's wie
  1091.   MSG_Hello definiert. Es ist nicht nötig zu wissen, wie diese Dateien
  1092.   intern arbeiten, insbesondere benötigt man auch keine Kenntnis der
  1093.   `locale.library'!
  1094.   
  1095.      Dazu gibt es verschiedene Kataloggeneratoren (im Folgenden KG),
  1096.   nämlich `CatComp' (nur für Developer), `KitCat' (nur deutsche
  1097.   Dokumentation, was hierzulande kein Problem ist), `MakeCat' (das ich
  1098.   nicht kenne) und `FlexCat' (das ich empfehle, einerseits, weil es sehr
  1099.   flexibel im erzeugten Source ist und z.B. Lokalisierung unter 2.0 sowie
  1100.   beliebige Programmiersprachen unterstützt, selbst Amiga-E, Cluster,
  1101.   Pascal, ... und andererseits, weil es von mir ist ;-) ), die diese
  1102.   Dateien sowie die Kataloge erzeugen. (Der obige Quelltext könnte je
  1103.   nach KG leicht unterschiedlich aussehen.) Siehe Aminet, directory
  1104.   `dev/misc'.
  1105.   
  1106.      Wie funktionieren diese KGs? Zunächst erzeugt man eine sogenannte
  1107.   `Katalogbeschreibung' (`Catalog description'), die so aussehen könnte:
  1108.            ; Mit einem Semikolon beginnende Zeilen sind Kommentare
  1109.            # language english
  1110.            ; die Sprache der eingebauten Strings
  1111.            # version 0
  1112.            ; die Katalogversion (0 = beliebig)
  1113.            MSG_Hello (1/15/30)
  1114.            Hello, local world
  1115.   
  1116.   Jeder String wird durch zwei Zeilen wie die letzten beiden definiert:
  1117.   MSG_Hello ist die String-ID, (1/15/30) gibt den Wert der ID sowie die
  1118.   minimale und maximale Länge an. (Diese Argumente können auch
  1119.   weggelassen werden, in welchem Fall einfach die nächste freie ID
  1120.   verwendet wird.)
  1121.   
  1122.      Nun schreiben wir das Programm. Sobald es fertig ist, wird mit dem
  1123.   KG eine sogenannte Katalogübersetzung (eine für jede andere Sprache
  1124.   als die eingebaute) erzeugt, die so aussehen könnte:
  1125.            ; Mit einem Semikolon beginnende Zeilen sind Kommentare
  1126.            ## language deutsch
  1127.            ; the catalog language
  1128.            ## version $VER: Deutsch.catalog 1.0 (22.12.93)
  1129.            ; the catalog files version string
  1130.            MSG_Hello
  1131.        
  1132.            ; Hello, local world
  1133.   
  1134.   Beachten Sie die leere Zeile nach der String-ID! (Die Argumente von ##
  1135.   language und ## version wären vielleicht leer.) Hier müssten jetzt
  1136.   die deutschen Strings eingesetzt werden. Mit dem KG wird daraus dann
  1137.   der eigentliche `Katalog' erzeugt. (Beachten Sie auch, daß hier die
  1138.   Angaben über String-ID und Stringlänge fehlen: Sie werden aus der
  1139.   Katalogbeschreibung übernommen.
  1140.   
  1141.      Wenn das Programm verändert wird (neue Strings, andere Längen) und
  1142.   die Katalogbeschreibung sich damit ebenfalls ändert, dann kann der KG
  1143.   analog benutzt werden, um auch die Katalogübersetzung und damit den
  1144.   Katalog auf den neuesten Stand zu bringen.
  1145.   
  1146.   4.9 Wie erhält man einen Zeiger auf das Fenster einer Konsole?
  1147.   ==============================================================
  1148.   
  1149.      Die folgende Funktion liefert den Window-Zeiger eines CON-Fensters.
  1150.   Sie kann unter allen Versionen des Amiga-OS ausgeführt werden.
  1151.   
  1152.          struct Window *getConWindowPtr(BPTR fh)
  1153.          {
  1154.            struct Window *w;
  1155.            struct FileHandle *cfh;
  1156.            struct StandardPacket *sp;
  1157.            struct InfoData *id;
  1158.            struct MsgPort *mp;
  1159.        
  1160.            w = NULL;
  1161.        
  1162.            if ((cfh = BADDR(fh))->fh_Type != NULL) {
  1163.              if (sp = AllocMem(sizeof (struct StandardPacket),
  1164.                               MEMF_PUBLIC | MEMF_CLEAR)) {
  1165.                if (id = AllocMem(sizeof (struct InfoData),
  1166.                                 MEMF_PUBLIC | MEMF_CLEAR)) {
  1167.                  if (mp = CreatePort(NULL, 0)) {
  1168.                    sp->sp_Msg.mn_Node.ln_Name = (char *) &sp->sp_Pkt;
  1169.                    sp->sp_Pkt.dp_Link         = &sp->sp_Msg;
  1170.                    sp->sp_Pkt.dp_Port         = mp;
  1171.                    sp->sp_Pkt.dp_Type         = ACTION_DISK_INFO;
  1172.                    sp->sp_Pkt.dp_Arg1         = MKBADDR(id);
  1173.        
  1174.                    PutMsg(cfh->fh_Type, &sp->sp_Msg);
  1175.                    (void) WaitPort(mp);
  1176.                    (void) GetMsg(mp);
  1177.        
  1178.                    if (sp->sp_Pkt.dp_Res1)
  1179.                      w = (struct Window *) id->id_VolumeNode;
  1180.        
  1181.                    DeletePort(mp);
  1182.                  }
  1183.                  FreeMem(id, sizeof (struct InfoData));
  1184.                }
  1185.                FreeMem(sp, sizeof (struct StandardPacket));
  1186.              }
  1187.            }
  1188.        
  1189.            return w;
  1190.          }
  1191.   
  1192.      Anmerkungen:
  1193.      * Auf ein CON-Fenster direkt zuzugreifen kann Konflikte mit Aktionen
  1194.        des CON-Handlers hervorrufen. Seien Sie vorsichtig!
  1195.   
  1196.      * Um den Window-Zeiger einer CLI-Konsole zu erhalten, übergibt man
  1197.        ein durch Open("*", MODE_OLDFILE) gewonnenes FileHandle an obige
  1198.        Funktion.
  1199.   
  1200.      * Das Ergebnis der obigen Funktion kann sehr wohl NULL sein, etwa im
  1201.        Falle eines AUX-Handlers oder falls ein AUTO-CON-Handler sein
  1202.        Fenster nicht öffnen kann.
  1203.   
  1204.      * Schickt man ein ACTION_DISK_INFO-Paket an einen AUTO-CON-Handler
  1205.        (2.0+), so verliert dessen Fenster seine speziellen
  1206.        AUTO-Eigenschaften (es kann also nicht mehr durch das Betätigen
  1207.        des Close-Gadgets geschlossen werden), weil der in id_VolumeNode
  1208.        gelieferte Window-Zeiger gültig bleiben muß.
  1209.   
  1210.      * Alles in allem: Verwenden Sie diese Funktion nicht. :-)
  1211.   
  1212.      Weitere Informationen finden Sie auf den Seiten 273, 276, 435, 463,
  1213.   485 und 629 im "Amiga Guru Book" (siehe Dokumentation).
  1214.   
  1215.      Ralph Babel, rbabel@babylon.pfm-mainz.de
  1216.   
  1217.   4.10 Was sind Pragmas?
  1218.   ======================
  1219.   
  1220.      Pragmas sind spezielle Anweisungen an den C-Compiler.  Zwei Probleme
  1221.   entstehen bei der Verwendung von Pragmas:
  1222.     1. Pragmas sind hochgradig compilerspezifisch. Nicht einmal die
  1223.        Amiga-Compiler haben dieselben Pragmas, selbst wenn damit das
  1224.        gleiche bewirkt wird.
  1225.   
  1226.     2. Man kann sich nicht darauf verlassen, daß ein Compiler Pragmas
  1227.        ignoriert, die er nicht versteht. Dies gilt selbst dann, wenn man
  1228.        einen Ausdruck wie den folgenden verwendet:
  1229.                 #ifndef MY_COMPILER
  1230.                 #pragma DoAnything
  1231.                 #endif
  1232.   
  1233.   Das letztere Problem läßt sich umgehen, indem man Pragmas wie folgt
  1234.   in eigene Include-Files setzt. (Das gleiche gilt übrigens auch für
  1235.   Präprozessor-Kommandos wie #asm (Aztec-C) oder #extern (C++).)
  1236.            #ifndef MY_COMPILER
  1237.            #include <mypragmas.h>
  1238.            #endif
  1239.   
  1240.      Aber was machen Pragmas auf dem Amiga? Meistens werden sie verwendet,
  1241.   um dem Compiler mitzuteilen, wie gewisse Library-Funktionen aufgerufen
  1242.   werden. (Tatsächlich wird fast immer diese Verwendung gemeint, wenn
  1243.   Amiga-Besitzer über Pragmas sprechen.) Gewöhnliche C-Funktionen
  1244.   erwarten ihre Argumente auf dem Stack, Library-Funktionen dagegen in
  1245.   bestimmten Registern. Ferner erwarten sie den `Library-Base-Pointer' in
  1246.   Register a6.  Betrachten wir eine Pragma-Anweisung von Aztec-C:
  1247.            #pragma amicall(SysBase,0xd2,FreeMem(a1,d0))
  1248.   
  1249.   Dies weist den Compiler an, das erste Argument in Register a1 und das
  1250.   zweite in d0 zu laden. Ferner wird der Inhalt der Variablen SysBase in
  1251.   Register a6 geladen. Maxon-Pragmas sehen genauso aus, Dice- und
  1252.   SAS-Pragmas sind allerdings etwas komplizierter:
  1253.            #pragma libcall SysBase FreeMem d2 0902
  1254.   
  1255.   Hier ist d2 (wie 0xd2 oben) der `Library-Vektor-Offset' (siehe
  1256.   nächstes Beispiel). Die letzte Ziffer ist die Zahl der Argumente, die
  1257.   davorstehende 0 ein Code für das Register mit dem Ergebnis und die
  1258.   davor stehenden Ziffern sind Codes für die Register mit den Argumenten
  1259.   in verkehrter Reihenfolge. (Die Codes bedeuten 0=d0, 1=d1, .., 8=a0,
  1260.   9=a1, a=a2, ..)
  1261.   
  1262.      Ein Kommando wie `FreeMem(fib,sizeof(*fib);' würde ein Compiler nun
  1263.   in folgenden Code übersetzen:
  1264.            move.l  _fib,a1
  1265.            move.l  260,d1        ; sizeof(struct FileInfoBlock)
  1266.            move.l  _SysBase,a6
  1267.            jsr     -0xd2(a6)       ; 0xd2 = _LVOFreeMem
  1268.   
  1269.   FreeMem in dieser Art aufzurufen ist kürzer und schneller als
  1270.   zunächst die Argumente auf den Stack zu legen und dann eine Funktion
  1271.   _FreeMem aufzurufen, die letzten Endes doch nur dasselbe tun und die
  1272.   Argumente vom Stack in dieselben Register laden würde.
  1273.   
  1274.      Das Portierungsproblem der Pragmas umgeht man, indem man sie
  1275.   folgendermaßen in den eigenen Quelltext einbindet:
  1276.            /*  SAS/C, Dice und GNU-c (ab Version 2.6.1) machen es    */
  1277.            /*  ganz einfach:                        */
  1278.            #if defined(__SASC)  ||  defined(_DCC)  ||  defined(__GNUC__)
  1279.              #include <proto/exec.h>
  1280.            #else
  1281.        
  1282.              /*  Lade den Funktionsprototyp. Dieser ist nicht vom    */
  1283.              /*  verwendeten Compiler abhängig.            */
  1284.              #include <clib/exec_protos.h>
  1285.        
  1286.              /*  Pragmas sind vom Compiler abhängig, aber wenigstens    */
  1287.              /*  die Namen der Dateien mit Pragmas sind relativ    */
  1288.              /*  einheitlich.                        */
  1289.              #ifdef AZTEC_C
  1290.                #include <pragmas/exec_lib.h>
  1291.              #elif defined(__MAXON__)
  1292.                #include <pragmas/exec_pragmas.h>
  1293.              #endif
  1294.        
  1295.              /*  Deklariere SysBase-Variable                */
  1296.              extern struct ExecBase *SysBase;
  1297.            #endif
  1298.   
  1299.   Das obige Beispiel kann problemlos mit allen angegebenen Compilern
  1300.   verwendet werden und produziert optimalen Code. (Die proto/*.h-Files
  1301.   machen übrigens auch nichts anderes als clib/*_protos.h und
  1302.   pragmas/*_pragmas.h mit #include einzulesen und dann die
  1303.   SysBase-Variable zu deklarieren.)
  1304.   
  1305.      Eine abschließende Frage bleibt allerdings: Wie bekommt man die
  1306.   Pragmas?  Die meisten Compiler haben bereits fertige Pragmas im
  1307.   Lieferumfang.  Allerdings hilft das nicht, wenn man z.B. eine neue
  1308.   Library benutzen möchte oder nur die Pragmas einer veralteten Version
  1309.   hat. In diesem Fall kann man die Pragmas selbst aus den sogenannten
  1310.   `FD'-Files erzeugen.  Dazu haben die meisten Compiler ein Utility
  1311.   namens `fd2pragma'.  (Das NDU hat z.B. ein Directory namens FD, in dem
  1312.   die FD-Files aller Libraries und Devices des OS enthalten sind. siehe
  1313.   Include-Dateien) Es gibt auch ein frei kopierbares fd2pragma, das
  1314.   Pragmas für Aztec, Dice, SAS und Maxon sowie LVO-Files für den
  1315.   Aztec-Assembler und eventuelle Tag-Versionen produziert. (Aminet,
  1316.   `dev/misc/fd2pragma2_0.lha' oder auf den Fish-CDs)
  1317.   
  1318.      Für Pragmas unter dem gcc siehe Inline-Dateien.
  1319.   
  1320.   4.11 Mein Compiler/Linker vermißt Symbole.
  1321.   ==========================================
  1322.   
  1323.      Zunächst sollte man sich versichern, daß die Funktion tatsächlich
  1324.   fehlt: Z.B. Floating-Point-Funktionen befinden sich in einer speziellen
  1325.   Link-Library, die erst mit der Option `-lm' eingebunden wird.  Ferner
  1326.   kann es eine fehlende Variable sein: Wenn man z.B. ohne es zu bemerken
  1327.   eine Intuition-Funktion benutzt, dann wird der Linker über das Fehlen
  1328.   eines Symbols `IntuitionBase' klagen. In diesem Fall muß man also
  1329.   lediglich das Folgende irgendwo im globalen Teil seines Quelltextes
  1330.   einbauen:
  1331.            struct Library *IntuitionBase;
  1332.   
  1333.   (Und vergessen Sie nicht, die Library mit OpenLibrary() zu eröffnen und
  1334.   mit CloseLibrary() zu schließen!) :-)
  1335.   
  1336.      Allerdings könnte die Funktion natürlich tatsächlich fehlen. Wenn
  1337.   man zum Beispiel nur die Version 2.0 der amiga.lib hat, dann fehlen
  1338.   etwa die Locale-Funktionen oder die Memory-Pool-Funktionen, obwohl sie
  1339.   prinzipiell verwendbar sind. (1) Die einfachste (und beste) Lösung
  1340.   ist, das sogenannte NDU zu kaufen.  Siehe Include-Dateien. Wer nicht
  1341.   solange warten möchte, für den ist die Frage, welche Art von Funktion
  1342.   in seiner Link-Library fehlt:
  1343.      * Einfache Amiga-Library-Funktionen (z.B. `exec/AllocPooled' oder
  1344.        `locale/OpenCatalogA') kann man mit Pragmas aufrufen und braucht
  1345.        dann lediglich Informationen über die Aufrufkonventionen
  1346.        (Library-Base, Library-Vektor-Offset und Argumentregister)
  1347.   
  1348.      * Tag-Funktionen sind meistens einfach Zwischenfunktionen, die ihre
  1349.        Argumente auf dem Stack erwarten und dann die eigentliche
  1350.        Library-Funktion aufrufen. Wenn man z.B. die Funktion
  1351.        `dos/AllocDosObject', die eine Konstante und einen Zeiger auf ein
  1352.        Array als Argumente erwartet, nach der obigen Methode konstruiert
  1353.        hat, dann hat man damit auch ihre Stack-Variante! Dazu erzeugt man
  1354.        einfach die folgende Funktion:
  1355.                 #include <clib/dos_protos.h>
  1356.                 #include <pragmas/dos_pragmas.h>    /*  Evtl. anderer Name    */
  1357.             
  1358.                 void *AllocDosObjectTags(ULONG objtype, Tag tag1, ...)
  1359.                 { return(AllocDosObject(objtype, (struct TagItem *) &tag1);
  1360.                 }
  1361.   
  1362.        Mit fd2pragma kann das auch automatisch geschehen. Siehe Pragmas.
  1363.   
  1364.      * Einige Funktionen bleiben aber noch übrig: Amiga.lib enthält
  1365.        nämlich auch Funktionen, die für sich selbst interessant sind,
  1366.        z.B. die BOOPSI-Funktionen (`DoMethod', `DoSuperMethod'), die
  1367.        Memory-Pool-Funktionen (`LibAllocPooled', `LibCreatePool', die
  1368.        Ersatz für entsprechende 3.0-Funktionen sind) oder `HookEntry',
  1369.        das sehr hilfreich bei der Programmierung von Hooks ist. Diese
  1370.        kann man nur durch entsprechende, disassemblierte und neu
  1371.        assemblierte oder compilierter Versionen ersetzen. Im
  1372.        AmigaFAQ-Archiv sind einige dieser Funktionen bereits enthalten.
  1373.   
  1374.      ---------- Footnotes ----------
  1375.   
  1376.      (1)  Dieses Problem  betrifft vor allem Besitzer von Aztec-C, das
  1377.   seither nicht weiter unterstützt wird und von Dice, der manchmal etwas
  1378.   unvollständig ist. Ich besitze beide ..
  1379.   
  1380.   4.12 Wie erfahre ich, was für Funktionen es gibt?
  1381.   =================================================
  1382.   
  1383.      Wenn Sie sich über den Namen einer für einen bestimmten Zweck
  1384.   geeigneten Funktion im Unklaren sind, dann gibt es folgende
  1385.   Möglichkeiten:
  1386.      * In den Autodocs der verschiedenen Libraries findet man am Anfang
  1387.        eine alphabetisch sortierte Tabelle aller Funktionen, die die
  1388.        betreffende Library bietet. Im Hauptteil findet man dann eine
  1389.        detaillierte Spezifikation aller Funktionen. Siehe Include-Dateien.
  1390.   
  1391.      * Die `.FD'-Dateien bieten eine sehr kompakte Übersicht über die
  1392.        Funktionen der diversen Libraries, sogar mit einer kurzen Angabe
  1393.        der Funktionsargumente. Wenn man schon grob weiß, wonach man
  1394.        sucht (z.B. nur die grobe Angabe der Argumente benötigt), dann
  1395.        findet man hier alle gewünschten Informationen. Siehe Pragmas.
  1396.   
  1397.      Dr. Peter Kittel, peterk@cbmger.de.so.commodore.com
  1398.   
  1399.   4.13 Der GNU C Compiler: Allgemeine Informationen und Installation
  1400.   ==================================================================
  1401.   
  1402.      Dieser Abschnitt enthält Informationen über den Amiga-Port des GNU
  1403.   C Compilers generell und die Installation insbesondere.
  1404.   
  1405.   4.13.1 Aktuelle Version
  1406.   -----------------------
  1407.   
  1408.      Die aktuelle gcc-Version ist 2.6.0 und an 2.6.1 wird gearbeitet.
  1409.   Sie enthält eine neue Version der ixemul.library (v40.3), aber man
  1410.   sollte sich wegen Fehlern, die sich auf 68000-Systemen bemerkbar
  1411.   machen, ixemul404.lha vom Aminet oder von meiner FTP-Site holen.
  1412.   Außerdem gibt es eine neue library, libnix, die das Benützen der
  1413.   ixemul.library verhindert.  2.6.1 wird Protos (wie bei SAS-C)
  1414.   enthalten, um das Kompilieren von SASC-Code unter gcc leichter zu
  1415.   machen.  Ein neuer Assembler, gas-2.5, ist enthalten, ein Paket namens
  1416.   q_anote ermöglicht die Ausgabe von gemischtem C/Asm-Code zu
  1417.   Debugging-Zwecken.  In Arbeit ist die Fähigkeit des Compilers, den
  1418.   Stack wachsen zu lassen, damit man vor dem Starten von gcc nicht mehr
  1419.   den Stack setzen muß.
  1420.   
  1421.   4.13.2 Hardwareanforderungen
  1422.   ----------------------------
  1423.   
  1424.      Jeder Amiga (vom A1000 bis zum A4000/40) ist prinzipiell in der
  1425.   Lage, die GNU-Utilities für AmigaDOS zu benutzen. Allerdings braucht
  1426.   man wenigstens 4MB RAM, um kleinere oder mittlere Projekte zu
  1427.   übersetzen, für größere (z.B. für gcc selbst) entsprechend mehr.
  1428.   Gigamem und VMM arbeiten mit gcc zusammen, es *könnte* also evtl.
  1429.   auch mit weniger gehen. Dazu braucht man aber eine MMU.  Siehe 68EC0xx.
  1430.   
  1431.      Eine volle Installation mitsamt C++ und Objective-C, inline-Dateien
  1432.   und Commodore Includes (siehe Include-Dateien) benötigt ca. 20 MB
  1433.   Platz auf der Festplatte.
  1434.   
  1435.      Kickstart 1.2/1.3 wird nicht mehr unterstützt. Wer KS 1.2/1.3 hat,
  1436.   sollte sich eine bessere Kickstart-Version kaufen.  Gcc arbeitet auch
  1437.   unter Kickstart 1.2/1.3, die volle Funktionalität ist aber erst ab
  1438.   Kickstart 2.x+ vorhanden. Eine schnelle CPU (z.B. 68030@25MHz oder
  1439.   besser) ist ebenfalls sinnvoll.
  1440.   
  1441.   4.13.3 Wer hat es gemacht?
  1442.   --------------------------
  1443.   
  1444.      Gcc und damit zusammenhängende Software wurde von den folgenden
  1445.   Personen auf den Amiga portiert (siehe Hilfe):
  1446.            Gcc v2.2.2:   Markus Wild
  1447.            Gcc v2.3.3:   Markus Wild
  1448.            Gcc v2.4.5:   Philippe Brand, Lars Hecking, Fred Fish
  1449.            Gcc v2.5.0 und später: Philippe Brand, Fred Fish, Leonard Norrgard
  1450.        
  1451.            Ixemul.library:    Markus Wild, Leonard Norrgard, R. Luebbert
  1452.            Libnix:           Matthias Fleischer, Gunther Nikl
  1453.                Gerlib:            Gerhard Müller
  1454.   
  1455.   4.13.4 Wo finde ich die gcc-Quelltexte?
  1456.   ---------------------------------------
  1457.   
  1458.      Alle gcc-Quelltexte und alle Binärdateien findet man auf:
  1459.   
  1460.     1. Aminet (wuarchive.wustl.edu und Mirror wie ftp.luth.se) in
  1461.        /pub/aminet/dev/gcc (siehe FTP)
  1462.   
  1463.     2. Ramses The Amiga Flying BBS:
  1464.                 +33-1-60037015  HST Dual v32 terbo 4800-21600
  1465.                     +33-1-60037713  SupraFax v32bis    4800-14400
  1466.                     +33-1-60037716  Tornado v22bis     1200-2400
  1467.        in Topic `Development', Area `Gcc' (are 156).
  1468.   
  1469.      Den originalen GNU-Quelltext bekommt man
  1470.   
  1471.     1. von denselben FTP-Servern wie die Binaries
  1472.   
  1473.     2. gnu.prep.ai.mit.edu (18.71.0.38) in `/pub/gnu'
  1474.   
  1475.     3. Ramses The Amiga Flying BBS in Topic
  1476.        `AmigaUnix/Unix/Linux/NetBSD', Area `Gnu Source Code'
  1477.   
  1478.      Diese Archive sollten alles Nötige enthalten, mit Ausnahme der
  1479.   Quelltexte der ixemul.library. Diese erhält man ebenfalls auf dem
  1480.   Aminet, Directory `dev/gcc'. (Zur Zeit ist die Version 40 der
  1481.   ixemul.library in Arbeit. Die Quelltexte werden am gleichen Ort sein.)
  1482.   
  1483.      Durch Richard Stallman, Free Software Foundation, ist festgelegt:
  1484.   
  1485.      "The GPL says that any distribution of binaries must contain either
  1486.   the source code or a written offer to supply source code (see the GPL
  1487.   for details of what is required)."
  1488.   
  1489.      Übersetzt: Die GPL (GNU General Public License) legt fest, daß jede
  1490.   Distribution entweder den Quelltext oder das schriftliche (oder
  1491.   geschriebene?) Angebot, diese zu liefern, enthalten muß. (Näheres
  1492.   siehe in der GPL.)
  1493.   
  1494.   4.13.5 Inline-Dateien
  1495.   ---------------------
  1496.   
  1497.      Die Inline-Dateien für den gcc kann man aus den originalen
  1498.   FD-Dateien von Commodore wie folgt erzeugen (Siehe Include-Dateien,
  1499.   siehe Pragmas):
  1500.   
  1501.        CLI> Assign INCLUDE: GCC:os-include
  1502.        CLI> Assign FD: INCLUDE:fd
  1503.        CLI> Makedir INCLUDE:inline
  1504.        CLI> cd USR:bin/geninline
  1505.        CLI> gen31
  1506.   
  1507.      Dies sollte alle Inline-Dateien in `GCC:os-include/inline' erzeugen.
  1508.   Falls man die 2.0- bzw. 3.0-Includes besitzt, sollte man gen20 bzw.
  1509.   gen30 benutzen. Inline-Dateien für OS3.1 (rev 40.13) sind in
  1510.   <gcc-aktuell> enthalten. Siehe Aktuelle Version.  (1)
  1511.   
  1512.      Auch mit dem Programm fd2inline kann man Inline-Dateien erzeugen:
  1513.   
  1514.        CLI> fd2inline <fd_file> <proto_file>
  1515.   
  1516.      ---------- Footnotes ----------
  1517.   
  1518.      (1)  Perl Skripte haben Schwierigkeiten, die Include-Dateien von
  1519.   AmigaDOS korrekt zu behandeln. Hier wäre etwas freiwillige Arbeit
  1520.   nötig ...
  1521.   
  1522.   4.13.6 Wie konvertiere ich die Amiga-Libraries für den gcc?
  1523.   -----------------------------------------------------------
  1524.   
  1525.      Ab gcc Version 2.6.0 werden dank den libnix-Autoren (Matthias
  1526.   Fleischer und Gunther Nikl) AmigaDOS Linklibraries unterstützt.
  1527.   
  1528.      Wenn man trotzdem eine gcc-Linklibrary generieren will, gibt es zwei
  1529.   Methoden:
  1530.   
  1531.      1. Mit hunk2gcc, dem AmigaDOS-Object-Konvertierer von Markus Wild.
  1532.   Dazu braucht man zunächst eine aktuelle Kopie der amiga.lib (aus dem
  1533.   NDU, siehe Include-Dateien). Nachdem man sich ein Directory für die
  1534.   konvertierten Dateien erstellt hat, wechselt man mit cd in dieses
  1535.   Directory und gibt das Folgende ein:
  1536.            hunk2gcc amiga.lib [..further libs if you like..]
  1537.   
  1538.   Dies erzeugt ein Objektfile wie a.out für jedes einzelne Modul, das
  1539.   die Library enthält. Diese Module muß man anschließend in einer
  1540.   gcc-Library zusammenfassen:
  1541.            ar qc libamiga.a obj.*
  1542.            ranlib libamiga.a
  1543.   
  1544.   Das Programm ranlib fügt eine Symboltabelle in die Library ein.
  1545.   (Dadurch wird der Zugriff auf die Library sehr viel schneller.)
  1546.   
  1547.      2. Eine libamiga.a mit libnix zu generieren ist recht leicht, braucht
  1548.   aber einige Zeit. Man dekomprimiere sources.lha aus dem libnix-Archiv
  1549.   und starte ein 'make libamiga.a'.
  1550.   
  1551.      *Beachte:* Solange man keine reinen AmigaDOS-Funktionen verwendet,
  1552.   kann man auch eine Pseudo-Library erzeugen:
  1553.          cat "int dummy;" >dummy.c
  1554.          gcc -c dummy.c
  1555.          ar crv libamiga.a dummy.o
  1556.          mv libamiga.a gcc:lib
  1557.   
  1558.   4.13.7 Wie installiere ich den gcc?
  1559.   -----------------------------------
  1560.   
  1561.     1. Falls dies die erste Installation von gcc ist:
  1562.   
  1563.        Mache das Folgende:
  1564.   
  1565.             cd ort_mit_sehr_viel_platz      ; ÄNDERN! Gib eine Schublade an
  1566.             makedir gnu
  1567.             lha x gcc260-base.lha           ; Der erste Teil, du brauchst ihn
  1568.   
  1569.        Jetzt mußt du `gnu/s/user-startup' an dein `S:User-Startup'
  1570.        anhängen (Ersetze Devel:GNU durch deinen eigenen Gnu Pfad).
  1571.   
  1572.        Weiter:
  1573.   
  1574.             execute gnu/s/user-startup     ; setzt wichtige Assigns
  1575.             copy gnu/envarc/#? ENVARC:
  1576.   
  1577.        *Ändere* die folgenden Zeilen!  Wenn du einen 68000- oder
  1578.        68010-Amiga hast, entferne das "-020" aus allen folgenden Zeilen!
  1579.   
  1580.             lha x gcc260-c-020.lha      ; Der C-compiler; du brauchst ihn
  1581.             lha x gcc260-doc.lha        ; Wenn du die Dokumentation zu gcc willst
  1582.             lha x gcc260-c++-020.lha    ; Wenn du C++ haben willst
  1583.             lha x gcc260-objc-020.lha   ; Wenn du Objective-C haben willst
  1584.             lha x gcc260-utils.lha      ; Wenn du zusätzliche Utilities haben willst
  1585.                                         ; (empfohlen zur Kompatibilität mit Unix)
  1586.             lha x gcc260-utilsdoc.lha   ; Wenn du Dokumentation zu allen Utilities willst
  1587.   
  1588.        Mit dem Script `restorelinks' mußt du Links generieren:
  1589.   
  1590.             sh /gnu/s/restorelinks      ; ÄNDERN! Füge " copy" an diese Zeile an,
  1591.                                         ; wenn du MakeLink nicht benützen willst,
  1592.                                         ; sondern Files lieber kopieren willst
  1593.   
  1594.        Schließlich:
  1595.   
  1596.             lha x gcc260-diffs.lha      ; Wenn du gcc neu kompilieren willst
  1597.             lha x gcc260-texi.lha       ; Wenn du Postscript-Doku generieren willst
  1598.   
  1599.        Auf zum nächsten Punkt und fröhliches Kompilieren!
  1600.   
  1601.     2. Wenn du ein Upgrade deiner gcc-Umgebung von v2.5.x machen willst,
  1602.        dearchiviere einfach gcc260-base.lha und gcc260-c-020.lha. Gehe
  1603.        sicher, daß du deine frühere ixemul.library löschst, wo sie
  1604.        sich auch befindet.  (Üblicherweise in `LIBS:')
  1605.   
  1606.   
  1607.      *Beachte*: Eine neue Version der ixemul.library wird verwendet, gehe
  1608.   bitte sicher, daß nirgends eine andere Kopie ist, die in Konflikt mit
  1609.   der neuen Version geraten kann.
  1610.   
  1611.   4.13.8 Kompilieren
  1612.   ------------------
  1613.   
  1614.      Wie wär's mit einem netten `Hello world'?
  1615.   
  1616.        #include <stdio.h>
  1617.        
  1618.        main()
  1619.        {
  1620.          printf("Hello World!\n");
  1621.        }
  1622.   
  1623.      Das war recht einfach ;-) Jetzt müssen wir es kompilieren.  Es gibt
  1624.   eine Menge Optionen in gcc, aber die einfachste Möglichkeit zu
  1625.   kompilieren ist:
  1626.   
  1627.        CLI> gcc -o hello hello.c
  1628.   
  1629.      Einfach?  Hier sind mehr Optionen:
  1630.   
  1631.      Ziel-Prozessoren von Motorola: Man kann reinen 68000 code, 68020,
  1632.   68030, 68040 und/oder 68881 kompilieren.  (Siehe Gcc-Dokumentation,
  1633.   Kapitel `Invoking Gcc/SubModel Options/M680X0 Options for Motorola
  1634.   specific compilation flags'.
  1635.   
  1636.        CLI> gcc -m68020 -m68881 -o hello hello.c
  1637.   
  1638.      Dies kompiliert Programme mit 68020 Code und direkten FPU-Befehlen
  1639.   und bindet mit den beschleunigten Libraries aus `GCC:lib/lib020'.
  1640.   
  1641.      Optimierung: Entweder du willst keine Optimierung oder du gibst `-O'
  1642.   an, das den Code optimiert, oder `-O2' für bessere Optimierung (Siehe
  1643.   die Dokumentation im Kapitel `Invoking Gcc/Optimize Options').
  1644.   Inzwischen gibt es auch eine `-O3' Option, die noch weiter geht.
  1645.   
  1646.        CLI> gcc -O2 -o hello hello.c
  1647.   
  1648.      Ein schnelles "Hello World" ;-)
  1649.   
  1650.      Codegenerierung: Vielleicht willst du residente Programme haben.
  1651.   Die Option dazu heißt `-resident'.
  1652.   
  1653.        CLI> gcc -resident -o hello hello.c
  1654.   
  1655.      Natürlich kannst du alle Optionen mischen, so etwa:
  1656.   
  1657.        CLI> gcc -O2 -m68020 -m68881 -resident -o hello hello.c
  1658.   
  1659.      Dies wird ein hoch optimiertes residentes Programm für 68020 und
  1660.   68881 ergeben.
  1661.   
  1662.      *Wichtig:* Wenn du nur AmigaOS-Funktionen verwendest oder aus
  1663.   irgendwelchen philosophischen Gründen keine ixemul.library verwenden
  1664.   willst, dann kannst du diese loswerden durch:
  1665.   
  1666.        CLI> gcc -noixemul -o foobar foobar.c
  1667.   
  1668.      natürlich nur, wenn du libnix hast (enthalten in gcc 2.6.0).
  1669.   
  1670.   4.13.9 Wichtige Informationsquellen
  1671.   -----------------------------------
  1672.   
  1673.      Der aktuelle Betreuer des Amiga-Ports von gcc ist:
  1674.            Philippe BRAND
  1675.            Fidonet: Ramses The Amiga Flying BBS 2:320/104.21
  1676.            Email:   phb@colombo.telesys-innov.fr (ONLY for personnal email).
  1677.            Ftp:     colombo.telesys-innov.fr:/pub/amigados-gnu
  1678.                     or /pub/incoming/uploads for uploads.
  1679.   
  1680.      Es gibt auch eine Mail-Liste in Finnland. Siehe Mail-Listen.
  1681.   Philippe Brand wird im Normalfall Fragen an diese Liste weiterleiten.
  1682.   
  1683.   5 Anwendungen
  1684.   *************
  1685.   
  1686.      Dieses Kapitel enthält Informationen zu verschiedenen
  1687.   Anwendungsbereichen.
  1688.   
  1689.   5.1 Text-Editoren
  1690.   =================
  1691.   
  1692.      Editoren sind Programme, die die Eingabe von unformatiertem Text
  1693.   ermöglichen.  Dies ist meist Text, der anschließend durch den
  1694.   Computer verarbeitet wird.  Programmierer benutzen etwa Editoren zur
  1695.   Eingabe der Quelltexte. Unter Unix beginnt Textverarbeitung meist mit
  1696.   einem Editor, dessen Ausgabe dann mit einer Textbearbeitungssprache
  1697.   (z.B. TeX) in gutaussehende Dokumente umgewandelt wird, da unter Unix
  1698.   Textverarbeitungsprogramme kaum verbreitet sind.
  1699.   
  1700.   *Kommerzielle Produkte*
  1701.        CygnusEd Professional und TurboText scheinen hier die Nase vorn zu
  1702.        haben.  Auf den Fish-Disks gibt es Dutzende von
  1703.        Shareware-Editoren. Eine Demoversion von TurboText ist auf
  1704.        Fish-Disk 445 und eine allerdings sehr alte von CygnusEd auf
  1705.        Fish-Disk 95. Die folgenden Editoren sind frei kopierbar.
  1706.   
  1707.   *Emacs*
  1708.        Gnu Emacs (Aminet, Directory `util/gnu') kommt von Unix und ist
  1709.        möglicherweise der König der Editoren. Er ist riesig (über 1MB),
  1710.        enthält eine unglaubliche Vielfalt von Funktionen (z.B. ein
  1711.        eigenes Fenstersystem und sogar ein Spiel :-) ) und beliebig
  1712.        erweiterbar: Emacs enthält einen eigenen Lisp-Interpreter!
  1713.        Andererseits ist er dadurch schwer erlernbar und so beliebig
  1714.        konfigurierbar, daß man mit dem Emacs eines anderen oft nicht
  1715.        mehr umgehen kann...
  1716.   
  1717.   *Vi*
  1718.        Einfacher, aber weniger konfigurierbar und nicht erweiterbar ist
  1719.        Vi.  Er ist vor allem bei Unix-Benutzern beliebt, weil es ihn auf
  1720.        *jeder* Unix-Maschine gibt. Die Wahl zwischen beiden ist eine
  1721.        Sache der persönlichen Vorliebe, kann einen allerdings fürs
  1722.        Leben kennzeichnen. Vim und Stevie (Fish-Disk 591 bzw. 256 und
  1723.        Aminet, Directory `util/edit') sind Vi-Versionen für den Amiga.
  1724.   
  1725.   *DME*
  1726.        Viele Amiga-Programmierer mögen DME. Er ist schnell und voll
  1727.        konfigurierbar: Menüs und Tastenbelegung sind beliebig. Er ist
  1728.        auch leichter erlernbar als Emacs und Vi. Es gibt drei
  1729.        verschiedene Versionen: AmokEd, DME und XDME.  Die Wahl ist
  1730.        Geschmacksache. (Oberon- und Modula-Programmierer bevorzugen
  1731.        häufig den AmokEd, weil der in Oberon geschrieben ist und die
  1732.        Fehlermeldungen von AmigaOberon direkt anzeigen kann,
  1733.        C-Programmierer dagegen stehen öfter auf letzterem.) Quellen:
  1734.        Aminet, Directory `util/edit', Fish-Disk 776 (XDME) und 749
  1735.        (AmokEd), AMOK 90.
  1736.   
  1737.   5.2 Was für Textverarbeitungsprogramme gibt es?
  1738.   ===============================================
  1739.   
  1740.      Textverarbeitungsprogramme benötigt man, um Briefe, Artikel oder
  1741.   ähnliches zu schreiben. Dies ist natürlich eine der wichtigsten
  1742.   Anwendungen eines Computers und eine für Sie geeignete Wahl bestimmt
  1743.   häufig, wie gut Sie mit Ihrem Computer überhaupt zurechtkommen.
  1744.   Textverarbeitungsprogramme besitzen teilweise Fähigkeiten, die sie
  1745.   sogar für DTP (siehe DTP) geeignet machen.  Für einfacher
  1746.   strukturierte Texte, etwa Quelltexte benützt man allerdings meist
  1747.   besser einen Editor. Siehe Editoren.
  1748.   
  1749.      Man unterscheidet Wysiwyg-Programme (What you see is what you get)
  1750.   und Seitenbearbeitungssprachen. Wysiwyg-Programme sollten schnell,
  1751.   komfortabel und einfach erlernbar sein. Die meisten Anwender ziehen sie
  1752.   vor. Die Alternative funktioniert ähnlich wie ein Compiler: Man
  1753.   verarbeitet Text-Dateien mit einem Programm, das das Layout übernimmt
  1754.   und eine weitere Datei erzeugt, die dann auf dem Bildschirm angezeigt
  1755.   oder auf einem Drucker ausgegeben werden kann. LaTeX ist eines dieser
  1756.   Programme. Siehe TeX.  Lout ist ein weiteres solches Programm,
  1757.   schneller und einfacher als LaTeX und mit vollständiger Dokumentation
  1758.   versehen, aber natürlich wesentlich weniger verbreitet. Lout erzeugt
  1759.   PostScript-Dateien. (Ob dies ein Vor- oder Nachteil ist, muß jeder
  1760.   selbst beurteilen. ;-) ) Siehe PostScript. Beide Programme sind frei
  1761.   kopierbar.
  1762.   
  1763.      Wysiwyg-Programme gibt es viele, allerdings alle kommerziell: Final
  1764.   Copy II, Wordworth, Word Perfect, AmiWrite, Beckertext II, Maxon Word
  1765.   und viele andere. Zur Wahl kann ich nur eines sagen: Lassen Sie sich
  1766.   viel Zeit bei der Auswahl.
  1767.   
  1768.   5.3 Desktop Publishing
  1769.   ======================
  1770.   
  1771.      Die Stärke dieser Programme ist die beliebige Anordnung und
  1772.   Gestaltung von Text- oder Grafikelementen. Bei Textverarbeitungen sind
  1773.   diese Fähigkeiten meist unterentwickelt. Umgekehrt fehlen
  1774.   DTP-Programmen häufig wichtige Funktionen zur Manipulation des Textes
  1775.   selbst. Allerdings kommen die besten Textverarbeitungen sicher nahe an
  1776.   den DTP Bereich (etwa Microsoft Word auf dem Mac oder PC) und umgekehrt
  1777.   ist Framemaker (UNIX, Mac, DOS) ein Beispiel eines DTP-Programms, das
  1778.   die wichtigsten Textverarbeitungsfunktionen enthält.  Auf dem Amiga
  1779.   gibt es leider weder in der einen noch in der anderen Richtung
  1780.   hervorragende Beispiele, wenn auch die wichtigsten Textverarbeitungen
  1781.   schon einiges leisten. Wenn man nicht gerade regelmäßig kleinere
  1782.   Zeitungen herausbringt, dann wird in den meisten Fällen ein
  1783.   Textverarbeitungsprogramm genügen. Und wer umgekehrt komplexere
  1784.   Funktionen wie mathematische Formeln, umfangreiche Indexe und
  1785.   Referenztabellen benötigt, der wird womöglich auf eine
  1786.   Seitenbearbeitungssprache angewiesen sein. Siehe Textverarbeitungen.
  1787.   
  1788.      Es gibt derzeit nur kommerzielle DTP-Systeme, vor allem ProPage und
  1789.   PageStream, die in den letzten Jahren wohl gegenseitig Hase und Igel
  1790.   miteinander gespielt haben. Derzeit scheint PageStream 3.0 vorne zu
  1791.   liegen.  Beide Programme liegen im Preis um 300$, in den USA gibt es
  1792.   wohl auch Studentenermäßigung (um 40%). Eine ausführlichere
  1793.   Beschreibung wäre willkommen.
  1794.   
  1795.   5.4 Was ist TeX und wo bekomme ich es?
  1796.   ======================================
  1797.   
  1798.      TeX ist eines der mächtigsten Textverarbeitungssysteme, die es gibt.
  1799.   Es kann praktisch beliebige mathematische Formeln ebenso darstellen wie
  1800.   komplexe Tabellen, Funktionen plotten (mit Hilfsprogrammen), Indexe oder
  1801.   Inhaltsverzeichnisse erzeugen und viele andere Dinge. Sein größter
  1802.   Vorteil ist, daß es frei kopierbar ist (TeX selbst, nicht unbedingt die
  1803.   Drucker- und Bildschirmtreiber) und sich dadurch auf der ganzen Welt und
  1804.   auf praktisch jeder Computerfamilie verbreitet hat. Sein größter
  1805.   Nachteil ist, daß es sehr unhandlich und schwer zu erlernen ist (Es
  1806.   arbeitet ähnlich wie ein Compiler) und keinerlei Wysiwyg-Fähigkeiten
  1807.   hat.  Aber viele Leute mögen es. (Dieser Text ist übrigens mit TeX
  1808.   erstellt worden. 8-) ) Siehe Textverarbeitungen.
  1809.   
  1810.      Es gibt im wesentlichen zwei Implementationen auf dem Amiga.
  1811.   Amiga-TeX von Thomas Rockicki und Radical Eye Software ist kommerziell
  1812.   und kostet etwa 200-300$. Es soll wirklich exzellent sein und seine
  1813.   Besitzer schwören darauf.
  1814.   
  1815.      Ich persönlich empfehle PasTeX, eine frei kopierbare Version. Es
  1816.   gibt immer wieder Leute, die über Installationsprobleme klagen
  1817.   (besonders, was das Laden und die automatische Erzeugung von Fonts
  1818.   angeht), aber ich kenne niemanden, der unzufrieden ist, nachdem es erst
  1819.   einmal installiert ist.  (Ein Freund mit TeX-Kenntnissen kann enorm
  1820.   hilfreich sein.) Wenn man sich an die Vorgaben des Installationsskripts
  1821.   hält, sollte es eigentlich keine Probleme geben. Wesentlich ist
  1822.   allerdings, daß man alles Nötige installiert und dazu braucht man:
  1823.      * 5 Disketten mit dem eigentlichen TeX-Compiler
  1824.   
  1825.      * 2 Disketten mit MetaFont
  1826.   
  1827.      * Nichts weiter Viele Leute fragen nach Fonts. Diese sind Teil des
  1828.   MetaFont-Paketes und werden automatisch erzeugt, wenn sie gebraucht
  1829.   werden, vorausgesetzt natürlich, daß TeX so wie in der Dokumentation
  1830.   beschrieben installiert ist. (Das Erzeugen der Fonts kann am Anfang
  1831.   natürlich dauern, bis die wichtigsten erst mal da sind.) Bitte
  1832.   beachten Sie, daß die PasTeX-Disketten mit Zoom gepackt sind. (siehe
  1833.   Endungen) PasTeX bekommt man per FTP z.B. bei `ftp.uni-passau.de' im
  1834.   Directory `/pub/amiga/tex/PasTeX1.3' und durch die Fish-CDs.
  1835.   
  1836.   5.5 Gibt es PostScript-Interpreter auf dem Amiga?
  1837.   =================================================
  1838.   
  1839.      PostScript ist eine Programmiersprache für das Ausdrucken von
  1840.   ganzen Seiten.  Apple hat PostScript populär gemacht, indem sie es in
  1841.   ihre Drucker eingebaut haben. Inzwischen gibt es viele Programme, die
  1842.   ihre Ausdrucke als PostScript-Quelltexte machen können. Bis vor kurzem
  1843.   brauchte man für PostScript einen relativ teuren Laserdrucker.
  1844.   Inzwischen gibt es aber auch Programme, die PostScript-Dateien auf
  1845.   anderen Druckern ausgeben können.
  1846.   
  1847.      Einer der Vorteile von PostScript ist, daß es unabhängig von der
  1848.   gewählten Auflösung ist. Man kann also die Vorteile der möglichen
  1849.   Auflösung auf dem Drucker ausnutzen und trotzdem dieselbe Datei auf
  1850.   dem Bildschirm mit seiner meist schlechteren Auflösung darstellen.
  1851.   
  1852.      Es gibt zwei frei kopierbare PostScript-Interpreter, Post und
  1853.   GhostScript.  Post ist eine shared-Library mit Programmen zur Ausgabe
  1854.   auf Drucker und Bildschirm. Man kann damit beispielsweise in AmigaTeX
  1855.   PostScript-Dateien als Bilder in TeX-Dateien einbauen. Siehe TeX.
  1856.   GhostScript besteht ebenfalls aus zwei Programmen, GhostScript selbst
  1857.   (der eigentliche Interpreter) und GhostView, der Benutzeroberfläche.
  1858.   Quellen: Aminet (Directories `text/print' und `text/dtp'), Fish Disk
  1859.   669.
  1860.   
  1861.   5.6 Font Konzepte
  1862.   =================
  1863.   
  1864.      Der Amiga ist in der Lage, zwei verschiedene Fontkonzepte zu
  1865.   verarbeiten. Da gibt   es zum einen die Bitmap-Fonts. Diese Fonts
  1866.   werden dadurch erzeugt, daß man jeden   Buchstaben einzeln Punkt für
  1867.   Punkt malt. Der Vorteil ist, daß sie bei kleinen   Größen gut
  1868.   aussehen, aber nicht viel beim Ausdruck taugen. Sie sehen auch nicht
  1869.   sehr gut aus, wenn man ihre Größe verändert. Zum anderen gibt es
  1870.   Vektor-Fonts.    Diese werden durch Kurven erzeugt, die als
  1871.   mathematische Formeln gespeichert werden.    Dadurch verändern sie ihr
  1872.   Aussehen nicht, wenn man die Größe ändert. Aber dies   gilt nur für
  1873.   größere Größen und für den Ausdruck. Vektor-Fonts benötigen
  1874.   auch weniger Speicher.
  1875.   
  1876.   5.6.1 Die Amiga Font Formate
  1877.   ----------------------------
  1878.   
  1879.     1. Agfa IntelliFont (Endung .type oder .lib) ist das Standard
  1880.        Font-Format auf dem   Amiga. Man kann es in jeder beliebigen
  1881.        Anwendung benutzen, und es kann in einen   Bitmap-Font konvertiert
  1882.        werden. Dies geschieht mit den Utilities `IntelliFont' (OS 3.x)
  1883.        oder `Fountain' (OS 2.x).
  1884.   
  1885.     2. Postscript Type 1 Fonts werden von vielen Anwendungen unterstützt,
  1886.         vor allem die Textverarbeitungs- und DTP-Programme. Es gibt zwei
  1887.        Arten des   Type 1 Formats: Binär & ASCII (Endung .pfb & .pfa).
  1888.        Die Software auf dem Amiga   unterstützt das binäre Format,
  1889.        welches auch unter Windows benutzt wird.    Das ASCII-Format wird
  1890.        auf Macintosh benutzt. Es ist sehr einfach, zwischen   diesen
  1891.        Formaten zu konvertieren (z.B. mit TypeSmith oder PFB2PFA).
  1892.        Zusätzlich gibt es   noch die Metrics Dateien mit den Endungen
  1893.        .afm oder .pfm. Sie enthalten Informationen   über die Größe
  1894.        (Breite) der einzelnen Zeichen. Die meisten Programme benötigen
  1895.        diese   Datei im selben Verzeichnis wie die Font-Datei.
  1896.   
  1897.     3. Postscript Type 3 Fonts (Endung: .ps oder nichts) werden nicht so
  1898.        häufig auf dem   Amiga benutzt, aber dennoch unterstützen einige
  1899.        Anwendungen dieses Format (z.B.    PageStream). Es gibt auch
  1900.        verschiedene Drucker-Download-Tools aus dem   PD-Bereich.
  1901.   
  1902.     4. Truetype Fonts (Endung: .ttf) werden auf dem Amiga nicht sehr
  1903.        häufig benutzt. Es   gibt eine Textverarbeitung, die dieses Format
  1904.        unterstützt (Wordworth 3.0).    Aufgrund der niedrigeren
  1905.        Qualität dieses Formats benutzen Amiga-Anwender   lieber eine
  1906.        höhere Qualität für ihre DTV- und DTP-Anwendungen und ihre
  1907.        Textverarbeitungen... Es gibt hier ebenfalls zwei Formate: Mac &
  1908.        Windows.    Die Amiga-Software benutzt hier ebenfalls das
  1909.        Windows-Format.
  1910.   
  1911.     5. DMF Fonts sind das Standard Font-Format von PageStream (Endung:
  1912.        .dmf), und da   PageStream der Marktführer unter den DTP
  1913.        Programmen auf dem Amiga ist, ist dieses   Format relativ häufig
  1914.        anzutreffen.
  1915.   
  1916.     6. Bitmap Fonts (Endung: .font und Zahlen in einem Verzeichnis mit
  1917.        Namen des Fonts,   manchmal auch .otag, wenn es von einem
  1918.        IntelliFont konvertiert wurde) wurden unter OS   1.x benutzt und
  1919.        sind seit OS 2.0 durch das IntelliFont Format ersetzt worden,
  1920.        welches   eine höhere Qualität besitzt. Man kann jedoch immer
  1921.        noch Bitmap Fonts benutzen,   welches gerade für kleinere
  1922.        Größen besser ist. Fuer Ausdrucke sollte man jedoch   eines der
  1923.        obengenannten Vector Font-Formate benutzen, da die Qualität sehr
  1924.        viel   höher ist.
  1925.   
  1926.     7. Colour Bitmap Fonts (=Farbige Bitmap Fonts) werden auch sehr
  1927.        häufig auf   dem Amiga benutzt (Endung wie Bitmap Fonts, jedoch
  1928.        die Zahlen haben am Ende noch ein C,   z.B. 35C), vor allem in DTV
  1929.        Anwendungen, wie z. B. dem Video Toaster und Scala.
  1930.   
  1931.   
  1932.   5.6.2 Wo gibt es Amiga Fonts
  1933.   ----------------------------
  1934.   
  1935.     1. Als erstes sollte man im AMINET nach fonts suchen. Dies ist das
  1936.        größte     Archiv mit Amiga Software und dort findet man eine
  1937.        ganze Menge an Fonts.      Das Aminet hat viele Mirrors, die auf
  1938.        der ganzen Welt verstreut sind. Hier     ist eine Auswahl:
  1939.   
  1940.          1. ftp.wustl.edu,
  1941.   
  1942.          2. ftp.luth.se,
  1943.   
  1944.          3. ftp.eunet.ch,
  1945.   
  1946.          4. ftp.uni-paderborn.de,
  1947.   
  1948.          5. ftp.doc.ic.ac.uk.
  1949.   
  1950.        Man muß sich als user ftp einloggen und in das folgende
  1951.        Verzeichnis wechseln
  1952.   
  1953.        /pub/aminet/text/font
  1954.   
  1955.     2. Ein weiterer guter ftp server ist der CICA-Server:
  1956.   
  1957.          1. ftp.cica.indiana.edu
  1958.   
  1959.        Zu diesem Server gibt es ebenfalls zahlreiche Mirrors.
  1960.   
  1961.     3. Ein weiterer Platz zum Suchen wäre der folgende WWW Server:
  1962.   
  1963.          1. http://jasper.ora.com/Internet-Font-Archive.html
  1964.   
  1965.     4. Zudem befinden sich noch sehr viele Zeichensätze auf der Fresh
  1966.        Fonts I CD-ROM.      Diese CD ist erhältlich bei
  1967.   
  1968.          1. Fred Fish / Amiga Library Services (orders@amigalib.com)
  1969.   
  1970.          2. Stefan Ossowski / Schatztruhe GmbH
  1971.   
  1972.        Die CD ist kostenlos, wenn man eine weitere CD bei dieser Firma
  1973.        kauft.
  1974.   
  1975.        Die HTML-Seiten der CD befinden sich unter folgender Adresse:
  1976.   
  1977.          1. http://macke.gris.informatik.uni-tuebingen.de:4711/~damor/
  1978.   
  1979.   
  1980.   
  1981.   5.6.3 Kommerzielle Font Hersteller
  1982.   ----------------------------------
  1983.   
  1984.      Kommerzielle Fonts können bei vielen verschiedenen Firmen bezogen
  1985.   werden, u.a.    bei den großen Font-Herstellern: Adobe, Font Haus,
  1986.   Font Company, Bitstream und   Monotype. Jeder Schnitt kostet ca. $40
  1987.   und kann meist nur in Paketen gekauft   werden. Adobe, Bitstream und
  1988.   Monotype vertreiben aber auch komplette Kollektionen   zu einem etwas
  1989.   niedrigeren Preis.
  1990.   
  1991.      Es gibt viele PD-Händler, die eine riesige Auswahl an Fonts haben,
  1992.   siehe dazu   die Anzeigen in einem Amiga Magazin.
  1993.   
  1994.      Schauen Sie in der Händlerliste nach, falls Sie dazu nähere
  1995.   Informationen haben   möchten.
  1996.   
  1997.   5.6.4 Nicht-Lateinische Zeichensaetze auf dem Amiga
  1998.   ---------------------------------------------------
  1999.   
  2000.      Aufgrund der schlechten Informationspolitik von C= gab es eigentlich
  2001.   keine   Informationen über Nicht-Lateinische Zeichensätze. Dennoch
  2002.   ist es möglich,   sie zu benutzen. Und das ohne Schwierigkeiten. Dazu
  2003.   muß man nur ein paar   zusätzliche Dateien installieren. Als erstes
  2004.   braucht man dazu die Fonts-Dateien.    Auf der Fresh Fonts CD-ROM
  2005.   (siehe oben) befindet sich eine große Anzahl. Um die
  2006.   nicht-lateinischen Fonts auch richtig benutzen zu können, muß man
  2007.   noch den   entsprechenden Tastaturtreiber installieren, welcher die
  2008.   Tastatur auf die Zeichen   einstellt, d.h. um einen russischen Font
  2009.   benutzen zu können, muß man den   russischen Tastaturtreiber in der
  2010.   Voreinstellung angeben (in PREFS/INPUT).
  2011.   
  2012.      Man kann nicht nur die anderen Alphabete benutzen, um Texte zu
  2013.   tippen, sondern auch   um die Workbench zu lokalisieren. Wie wäre es
  2014.   mit einer griechischen oder   hebräischen Workbench? Im AMINET
  2015.   befinden sich diese Dateien!
  2016.   
  2017.      Im Übrigen ist es kein Problem, Hebräisch & Arabisch in einer
  2018.   beliebigen   Textverarbeitung zu benutzen und auch von rechts nach
  2019.   links zu schreiben. Dies   kann dadurch erreicht werden, dass man das
  2020.   Kerning auf einen negativen Wert setzt   (dadurch bewegt sich der
  2021.   Cursor nach links und nicht nach rechts) und das Zeichen   in den
  2022.   negativen Bereich verschiebt. Fonts, die das können, gibt es bei mir.
  2023.   
  2024.   5.6.5 Amiga Font Installation
  2025.   -----------------------------
  2026.   
  2027.      Die Installation von Postscript, DMF und Truetype Fonts wird von den
  2028.   Anwendungen   beschrieben, die sie benutzen. Bitte lesen Sie im
  2029.   Handbuch das entsprechende   Kapitel.
  2030.   
  2031.      Die Installation von IntelliFonts ist sehr einfach. Man muß nur
  2032.   `IntelliFont'   (OS 3.x) oder `Fountain' (OS 2.x) starten und den
  2033.   Anweisungen im Programm   folgen.
  2034.   
  2035.      Um Bitmap-Fonts zu installieren, kopiere sie entweder auf das
  2036.   logische Device   `FONTS:' oder gebe in der Shell folgenden Assign ein,
  2037.   damit der Amiga weiß, wo   er nach Fonts suchen soll:
  2038.   
  2039.          ASSIGN Fonts: <Verzeichnis> ADD
  2040.   
  2041.      Direkt danach kann man die Anwendung starten und die Fonts benutzen.
  2042.   Bei der   Benutzung von nicht-lateinischen Fonts vergessen Sie nicht,
  2043.   den entsprechenden   Tastaturtreiber zu installieren.
  2044.   
  2045.   5.6.6 Amiga Font Utilities
  2046.   --------------------------
  2047.   
  2048.     1. IntelliFont
  2049.   
  2050.        IntelliFont ist ein System-Programm von OS 3.x, das die
  2051.        Installation von   IntelliFonts vornimmt und deren Konversion in
  2052.        Bitmap-Fonts vornimmt. Das Programm   befindet sich auf der
  2053.        Workbench im Verzeichnis `SYS:System/'. Weitere   Informationen zu
  2054.        diesem Programm befinden sich im Amiga-Handbuch.
  2055.   
  2056.     2. Fountain
  2057.   
  2058.        Ist das Vorgänger-Programm von IntelliFont und kam mit der jetzt
  2059.        überflüssigen   Version OS 2.x. Lesen Sie bitte den Abschnitt
  2060.        über Fountain in ihrem Workbench   2.x Handbuch nach.
  2061.   
  2062.     3. PFB2PFA
  2063.   
  2064.        Dieses kleine Utility wandelt Postscript Binär-Dateien in
  2065.        Postscript ASCII-Dateien   um. Dies ist nötig, um DOS & Amiga
  2066.        Adobe Type 1 Fonts auf dem Mac nutzen zu   können.
  2067.   
  2068.     4. Cachefont
  2069.   
  2070.        Dieses tolle Programm puffert die Fontsliste, um viel Zeit
  2071.        einzusparen, die durch   das Einlesen dieser Liste verloren geht.
  2072.        Dieses Programm schaut einmal nach allen   verfügbaren Fonts und
  2073.        erzeugt eine besondere Cache-Datei auf Disk.
  2074.   
  2075.     5. TypeSmith
  2076.   
  2077.        Dies ist der beste Font-Konvertierer auf dem Amiga, neben seiner
  2078.        Funktion als   großartiger Font-Editor (siehe unten) :-). Das
  2079.        Programm kann zwischen folgenden   Formaten hin- und
  2080.        herkonvertieren:
  2081.   
  2082.          1. Truetype
  2083.   
  2084.          2. DMF
  2085.   
  2086.          3. Adobe (Type 1 & 3)
  2087.   
  2088.          4. IntelliFont
  2089.   
  2090.          5. Bitmap (Amiga, Adobe, DMF)
  2091.   
  2092.   
  2093.   5.6.7 Das Erzeugen von Vektor-Fonts
  2094.   -----------------------------------
  2095.   
  2096.      Dies ist sehr, sehr schwierig. Viele glauben, daß es Programme
  2097.   gibt, die einfach   Bilder in Fonts konvertieren können. Dies ist
  2098.   nicht der Fall; in vielen Fällen   werden die Fonts von Grund auf
  2099.   gezeichnet. Dies geschieht durch Kurven, die der   Buchstaben-Form
  2100.   möglichst ähnlich sehen. Zusätzlich gibt es noch bestimmte   Regeln,
  2101.   wie diese Kurven gezeichnet werden müssen. Selbst das Designen (oder
  2102.   auch nur Digitalisieren) kann Hunderte von Stunden in Anspruch nehmen.
  2103.   
  2104.      Der einfachste Weg, das Erzeugen von Fonts zu erlernen, ist, einfach
  2105.   mal ein paar   vorhandene Fonts anzuschauen und einige Buchstaben zu
  2106.   ändern.
  2107.   
  2108.      Es gibt zwei Programme für den Amiga, mit denen man Fonts erzeugen
  2109.   kann: TypeSmith   2.5 ($150) und FontDesigner ($100). Diese Programme
  2110.   ermöglichen es Ihnen,   gescannte Bilder zu importieren und sie danach
  2111.   in Vektor Fonts umzuwandeln.    Die Programme können Adobe Type 1, 3,
  2112.   Truetype, AGFA IntelliFont, DMF und Bitmap   Fonts für Amiga, Mac und
  2113.   Windows erzeugen. Sie erzeugen auch ein automatisches   Hinting. Man
  2114.   kann mit ihnen auch vorhandene Fonts laden, sie verändern und sie   in
  2115.   einem anderen Format wieder abspeichern.
  2116.   
  2117.      So viel ich weiß, gibt es keine Shareware-Programme, die in der
  2118.   Lage sind,   Vektor-Fonts zu erzeugen.
  2119.   
  2120.      Es gibt auch zwei Programme, mit denen man Bitmap-Fonts erzeugen
  2121.   kann: Personal   Fonts Maker und Calligrapher. Das zweite wurde in den
  2122.   letzten Jahren nicht   mehr verbessert, aber dennoch ist es ein gutes
  2123.   Werkzeug. Das erste Programm ging   aus einem Bitmap-Malprogram
  2124.   (Personal Paint) hervor, indem ein paar nützliche   Komponenten
  2125.   hinzugefügt wurden.
  2126.   
  2127.      Es gibt ein paar Shareware Programme, die Bitmap-Fonts erzeugen
  2128.   können. Diese   können dann mit TypeSmith in Vector Fonts umgewandelt
  2129.   werden.
  2130.   
  2131.   5.6.8 Probleme und moegliche Loesungen
  2132.   --------------------------------------
  2133.   
  2134.     1. Pagestream erkennt die neuinstallierten Fonts nicht.
  2135.   
  2136.        Dies kommt vor, wenn zwei Fonts diesselbe ID Nummer haben. Die
  2137.        Lösung hierfür ist,   einen der Fonts in einen FontEditor zu
  2138.        laden und eine neue ID einzugeben. Jetzt   kann es natürlich
  2139.        passieren, daß man eine andere erwischt, die schon vergeben   war.
  2140.   
  2141.     2. Ihre Anwendung findet die IntelliFonts nicht.
  2142.   
  2143.        Dies passiert, wenn das logische Device `FONTS:' nicht auf das
  2144.        Verzeichnis gesetzt   ist, in dem sich die gewünschten Dateien
  2145.        befinden. Dies läßt sich einfach beheben,   indem man den
  2146.        folgenden Befehl in die Shell tippt oder diese Zeile an die
  2147.        Datei S:User-Startup anhängt (dann wird das beim Booten
  2148.        automatisch gemacht):
  2149.   
  2150.               ASSIGN Fonts: <Verzeichnis> ADD
  2151.   
  2152.     3. Bei der Benutzung von einem nicht-lateinischen Font erscheinen die
  2153.        falschen   Zeichen bei der Eingabe.
  2154.   
  2155.        Hier haben Sie vermutlich vergessen, den entsprechenden
  2156.        Tastaturtreiber einzustellen.    Gehen Sie in das
  2157.        Prefs-Verzeichnis und starten Sie das Programm `INPUT'. Dort
  2158.        kann man den Tastaturtreiber einstellen.
  2159.   
  2160.   
  2161.   5.7 Wie bearbeite ich Nicht-Latin-Texte?
  2162.   ========================================
  2163.   
  2164.      Gegenwärtig kenne ich nur Programme für japanische und chinesische
  2165.   Texte.
  2166.   
  2167.      Siepieau Pang (siepiau@gbamail.mincom.oz.au)
  2168.   
  2169.   5.7.1 Japanische Editoren und Anzeigeprogramme
  2170.   ----------------------------------------------
  2171.   
  2172.      ANS (Amiga Nihongo System) Version 1.0 von
  2173.            SoftHouse Tecnode
  2174.            102 Coupo Izumi
  2175.            1-4-5 Houya-shi
  2176.            Izumi-machi
  2177.            Tokyo 202
  2178.            JAPAN
  2179.   
  2180.   wird in Japan von MIQ Japan, Ltd. vertrieben. Es bietet eine japanische
  2181.   Arbeitsumgebung, ist kompatibel zu AmigaOS 1.3 und 2.0 und braucht
  2182.   allerdings wenigstens 1MB RAM. (Mehr ist sinnvoll) ANS erlaubt
  2183.   japanische Fenster und Menüs (die die englischen Menüs ersetzen),
  2184.   japanische Bitmapfonts (12 und 24 Pixel), Jinput/Joutput (die gemeinsam
  2185.   eine Japanische Textbearbeitung erlauben), XEDmini (ein einfacher
  2186.   japanischer Editor mit eingebautem Fonteditor, den man auch als
  2187.   japanisches Terminal verwenden kann), ein Kana-Kanji
  2188.   Konversionswörterbuch für XEDmini und JInput, Jfilter (mit dem man
  2189.   japanische Files anschauen kann, während man mit einer MS-DOS-Konsole
  2190.   verbunden ist), und einigen Utilities zur Konversion und Kommunikation.
  2191.   XEDmini benützt pcj (Japanische Version von pcd) zur Kommunikation,
  2192.   kann also Uploads oder Downloads durchführen, während eine Datei
  2193.   bearbeitet wird. Es soll angeblich einigermaßen billig und recht
  2194.   einfach bedienbar sein.
  2195.   
  2196.      JemTeX ist ein Präprozessor, der eine Datei mit japanischem Text in
  2197.   gewöhnliche TeX/LaTeX-Dateien übersetzt. Das Archiv enthält unter
  2198.   anderem auch das Utility jis2mf und einen 24-Punkte Kanji-Font sowie ein
  2199.   Programm, mit dem man Kanji-Tabellen erstellen kann.  Mit jis2mf kann
  2200.   man den Bitmap-Font in Metafont-Dateien übersetzen.  JemTeX v2.0
  2201.   sollte man auf jedem Amiga mit SAS/C compilieren oder auch auf
  2202.   UNIX-Maschinen mit gcc. Man erhält das Programm per FTP von
  2203.   utsun.s.u-tokyo.ac.jp (133.11.11.11). Geschrieben ist es von Francois
  2204.   Jalbert (jalbert@iro.umontreal.ca oder jalbert@cs.ubc.ca).
  2205.   
  2206.      Die folgenden Programme können allesamt Texte anzeigen und sind auf
  2207.   dem Aminet (Directory text/show) zu finden:
  2208.   
  2209.      JIStoJi von Bart Mathias erkennt Texte in Old-JIS, New-JIS, Shift-JIS
  2210.   oder EUC-JIS (aber auch ASCII) und zeigt sie auf einem eigenen Screen
  2211.   an. Es beherrscht auch Ausgabe auf Drucker und läuft ab Kickstart 1.3.
  2212.   
  2213.      jmore (Japanese more) ist ein More-Clone, der auch Texte in ns-kanji
  2214.   (Shift-JIS) beherrscht. Er eröffnet ebenfalls einen eigenen Screen
  2215.   (Interlace) und benötigt einen Font-Handler namens jFontSys. Das Archiv
  2216.   entädlt jmore, jFontsys und einen Bitmap-Font namens wlook/16.
  2217.   Kanji-Fonts braucht man außerdem auch noch. (Aminet,
  2218.   `text/font/amknj16.lzh') Die gesamte Dokumentation kommt als
  2219.   japanischer Text, d.h. man benötigt jmore selbst, um sie anzuzeigen.
  2220.   Deshalb hier in aller Kürze die Installationsprozedur:
  2221.     1. Kopieren Sie den `wlook/16' nach `FONTS:'.
  2222.   
  2223.     2. Erstellen Sie einen Assign `JFONTS:', der in das Directory zeigt,
  2224.        in dem die amknj16-Fonts stehen. Dies muß nicht unbedingt
  2225.        identisch mit `FONTS:' sein.
  2226.   
  2227.     3. Kopieren Sie `jFont-startup' nach `S:'.
  2228.   
  2229.     4. Fügen Sie die folgende Zeile in `s:User-Startup' ein:
  2230.                 run >nil: jFontSys
  2231.   
  2232.     5. Um jmore zu benutzen, geben Sie das folgende Kommando ein:
  2233.                 jmore <japanese.txt>
  2234.   
  2235.   JISconvert von Dwight Hubbard ist schließlich noch ein Utility zur
  2236.   Konversion von Texten zwischen EUC, New JIS, Old JIS, NEC JIS und Shift
  2237.   JIS. Es hat auch Optionen, mit denen halbgroßes Katakana in volle
  2238.   Größe umgewandelt werden kann oder mit denen man Dateien reparieren
  2239.   kann, aus denen die ESC-Zeichen entfernt wurden.  Das Programm läuft
  2240.   ab AmigaDOS 2.04.
  2241.   
  2242.   5.7.2 Chinesische Anzeigeprogramme
  2243.   ----------------------------------
  2244.   
  2245.      HZview (von Ji Ma) zeigt chinesischen Text an, der in 8-bit Guo Biao
  2246.   kodiert ist. Das Programm läuft ab AmigaDOS v2.1 und benötigt die
  2247.   Bitmap-Library cclib.16. (Im Archiv enthalten.)
  2248.   
  2249.      *ACHTUNG:* Dies ist eine Betaversion. Die Dokumentation erwähnt
  2250.   z.B. nicht, daß man
  2251.     1. Einen Hires-Interlaced-Screen mit 1 oder 2 Bitmaps als
  2252.        Default-Publicscreen einstellen muß.
  2253.   
  2254.     2. Die Größe der Dateien auf ungefähr 30K beschränkt ist.  (Auf
  2255.        meiner Maschine, einem A1200 mit WB3.0.)
  2256.   
  2257.     3. Eine FPU ist nötig, wenn man den Text scrollen möchte, ohne daß
  2258.        es zu Crashs kommt.
  2259.   
  2260.     4. Die cclib.16 sollte im selben Directory wie die zu lesende Datei
  2261.        stehen.
  2262.   
  2263.   Es kann sehr wohl noch andere solche Fehler geben.
  2264.   
  2265.   6 Emulationen
  2266.   *************
  2267.   
  2268.      Was? Der Amiga ist nicht gut genug? Sie wollen noch eine andere
  2269.   Maschine?  Also gut, dann schauen Sie hier...
  2270.   
  2271.   6.1 Kann ich meinen Amiga unter Unix benutzen?
  2272.   ==============================================
  2273.   
  2274.      Es gibt derzeit drei Unix-Versionen für den Amiga. Alle benötigen
  2275.   mindestens einen 68030 wegen der MMU (siehe 68EC0xx),
  2276.   68040-Unterstützung ist erst in Arbeit. Alle scheinen Probleme mit
  2277.   manchen Harddisk-Controllern zu haben, man sollte sich deshalb anhand
  2278.   der Dokumentation informieren, ob sie auf der eigenen Maschine
  2279.   überhaupt laufen. Unix benötigt natürlich eine ungeheure Menge von
  2280.   Resourcen, 8Mb RAM und eine 150Mb-Partition für Unix dürften eher die
  2281.   Untergrenze sein.
  2282.   
  2283.     1. Commodore hat in der Vergangenheit ein System-V-Unix angeboten. Es
  2284.        enthielt TCP/IP, X11 und andere Software und hat eigentlich einen
  2285.        guten Eindruck gemacht, aber war teuer und wird vor allem nicht
  2286.        mehr weiterentwickelt. Commodore-Unix benötigt einen Streamer,
  2287.        denn es wird auf solchen Bändern ausgeliefert.
  2288.   
  2289.     2. Ein Linux-Port wird vorbereitet, allerdings gibt es derzeit nur den
  2290.        Kernel, das heißt die untersten Funktionen des Betriebssystems.
  2291.        Für Spezialisten könnte es interessant sein, kann aber wohl
  2292.        nicht empfohlen werden. Linux ist frei kopierbar. Quellen:
  2293.        `ftp.uni-paderborn.de' oder `ftp.uni-erlangen.de', beide Directory
  2294.        `/pub/Linux/MIRROR.tsx-11/680x0'.  Oder `ftp.leo.org', directory
  2295.        `/pub/comp/os/linux/680x0'.
  2296.   
  2297.     3. NetBSD ist ebenfalls frei kopierbar. Wie Linux ist es noch nicht
  2298.        fertig, aber macht derzeit gute Fortschritte. Beispielsweise
  2299.        läuft wohl schon die meiste GNU-Software, vor allem Emacs und gcc.
  2300.        Es ist auf jeden Fall einen Blick wert. Quellen:
  2301.        `ftp.uni-erlangen.de', Directory
  2302.        `/pub/amiga/unix/NetBSD-regensburg'.  Siehe Fish-CD.
  2303.   
  2304.   6.2 Ist es möglich, den Amiga als X11-Terminal zu benutzen?
  2305.   ===========================================================
  2306.   
  2307.      Es gibt zwei Softwarepakete, die das möglich machen:
  2308.   
  2309.      GfxBase bietet ein kommerzielles Paket an. Es enthält verschiedene
  2310.   Window-Manager und Clients. Eine Demo-Version ist auf dem Aminet.
  2311.   (`gfx/x11/GfxBase-X11-Demo.lha')
  2312.   
  2313.      Frei kopierbar ist DaggeX. Allerdings ist dieses möglicherweise noch
  2314.   nicht ganz fertig, zumindest wird die Versionsnummer mit 0.91 angegeben.
  2315.   Zu finden ist es ebenfalls auf dem Aminet. (`gfx/x11/DaggeX-0.91.lha'
  2316.   und `gfx/x11/twm_930531.lha')
  2317.   
  2318.   6.3 Wie kann ich MS-Dos-Programme starten?
  2319.   ==========================================
  2320.   
  2321.      PC-Task ist ein softwaremäßiger IBM-Emulator für alle
  2322.   Amiga-Rechner, der die Nutzung von MSDOS- und MS Windows 3.1 - Software
  2323.   erlaubt (vorausgesetzt, es ist genug RAM und Plattenplatz da).  Die
  2324.   momentane Version 3.1 bietet die Emulation von 80286 mit
  2325.   MDA/CGA/EGA/VGA/SVGA, seriellem und parallelem Port, Maus, zwei
  2326.   Festplatten, zwei Diskettenlaufwerke und CDROM-Unterstützung..  Eine
  2327.   Demoversion liegt auf dem Aminet in
  2328.   `/pub/aminet/misc/emu/PCTaskDemo31.lzh'.  Autor Chris Hames
  2329.   (bytey@werple.mira.net.au) Vertreiber (pctask@quasar.dialix.oz.au)
  2330.   
  2331.   6.4 MsDos-formatierte Wechselplatten am Amiga verwenden
  2332.   =======================================================
  2333.   
  2334.      Um eine Syquest mit MSDOS-Format am Amiga zu mounten, benötigt man
  2335.   mit einem Adaptec-Controller auf DOS-Seite folgenden Mounteintrag in
  2336.   `DEVS:mountlist': Für mehrere Partitionen auf dem Medium muß man
  2337.   folgenden Eintrag mehrfach kopieren und jedem Eintrag einen anderen
  2338.   Namen geben (z.B. SyC:, SyD:, SyE: usw.).  Die Werte für Low- und
  2339.   Highcylinder brauchen dafür nicht angepaßt zu werden; dies erledigt
  2340.   CrossDOSFileSystem von alleine.
  2341.   
  2342.        SyC:   /* SyD:, SyE:, usw. */
  2343.                Filesystem      = L:CrossDOSFileSystem
  2344.                Device          = scsi.device
  2345.                Unit            = 2
  2346.                Flags           = 1
  2347.                Surfaces        = 1
  2348.                BlocksPerTrack  = 1
  2349.                BlockSize       = 512
  2350.                Reserved        = 1
  2351.                Interleave      = 0
  2352.                LowCyl          = 0
  2353.                HighCyl         = 524287
  2354.                Buffers         = 128
  2355.                BufMemType      = 0
  2356.                Stacksize       = 4000
  2357.                Priority        = 5
  2358.                GlobVec         = -1
  2359.                DosType         = 0x4D534800
  2360.                Activate        = 1
  2361.        #
  2362.   
  2363.      Für andere Kontroller auf MSDOS-Seite sollte dieser Eintrag auch
  2364.   funktionieren, muß aber evtl. entsprechend angepaßt werden.  Beim
  2365.   Einlegen des Syquest-270-MB-Mediums wird dies (hier jedenfalls)
  2366.   automatisch angemeldet (als Laufwerk SyC:) und kann über das
  2367.   CrossDos-Filesystem ganz normal genutzt werden.
  2368.   
  2369.      Gerhard Schneider (fido@incubus.sub.org) Andre Keller
  2370.   (keller@rs11.hrz.th-darmstadt.de)
  2371.   
  2372.   7 Verschiedenes
  2373.   ***************
  2374.   
  2375.      Dieses Kapitel enthält Dinge, die nicht in die anderen passen.
  2376.   
  2377.   7.1 Gibt es eine Unix-Version von LhA?
  2378.   ======================================
  2379.   
  2380.      Ja. Siehe Endungen.
  2381.   
  2382.   7.2 Was sind Dateien, die mit ... enden?
  2383.   ========================================
  2384.   
  2385.      Die meisten dieser Endungen besagen, daß die betreffende Datei
  2386.   komprimiert (gepackt) ist oder ein Archiv aus mehreren Dateien ist oder
  2387.   beides. (Einige Programme können sogar ganze Disketten archivieren.)
  2388.   Übliche Endungen und die dazugehörigen Programme sind:
  2389.   *.sfx*
  2390.        Gepackte Archive, die in ein ausführbares Programm eingebunden
  2391.        sind; dieses wird einfach aufgerufen, um sich selbst zu entpacken.
  2392.        (sfx = self extract)
  2393.   
  2394.   *.lha*
  2395.   *.lzh*
  2396.        Gepackte Archive; empfohlen: LhA (`util/arc/LhA_e138.run' auf
  2397.        Aminet  oder Fish-Disk 715) oder Lx (`util/arc/lx100.lha' auf
  2398.        Aminet), es gibt auch eine Unix-Version
  2399.        (`misc/unix/lha-1.00.tar.Z')
  2400.   
  2401.   *.dms*
  2402.        Mit DMS komprimierte Disketten; Quellen: Aminet
  2403.        (`util/arc/dms111.sfx') oder Fish-Disk 406
  2404.   
  2405.   *.zom*
  2406.        Mit Zoom komprimierte Disketten; Quellen: Aminet
  2407.        (`util/arc/Zoom_5.4.lha' oder Fish-Disk 682); eine ältere Version
  2408.        findet man auf Fish-Disk 459, diese ist möglicherweise für das
  2409.        Entpacken von PasTeX nötig
  2410.   
  2411.   *.zoo*
  2412.        Komprimierte Archive; empfohlen: Zoo (`util/arc/zpp2-10.lzh' auf
  2413.        Aminet oder Fish-Disk 527)
  2414.   
  2415.   *.Z*
  2416.   *.z*
  2417.   *.gz*
  2418.        Komprimierte Dateien; empfohlen: Gzip (`util/pack/gzip124x.lha'
  2419.        auf dem Aminet). diese Dateien sind meist Unix-Dateien
  2420.   
  2421.   *.tar*
  2422.        Acrhive; empfohlen: tar (`util/arc/tar.lha' oder
  2423.        `util/arc/gtar10.lha' auf Aminet oder Fish-Disk 445), ebenfalls
  2424.        meist Unix-Dateien. Man findet häufig `.tar.Z' oder `.tar.gz'.
  2425.   
  2426.   *.arj*
  2427.        Komprimierte Archive; empfohlen unarj (`util/arc/unarj-0.5.lha' auf
  2428.        Aminet)
  2429.   
  2430.   *.zip*
  2431.        Komprimierte Archive; empfohlen UnZip (`util/arc/unzip-5.1.lha' auf
  2432.        Aminet). Dies sind meist MS-Dos-Archive.
  2433.   
  2434.   7.3 Gibt es ein Programm wie Stacker, um die Hard-Disk zu packen?
  2435.   =================================================================
  2436.   
  2437.      XFH ist eine gute Möglichkeit. Es arbeitet als Handler und benützt
  2438.   die XPK-Libraries, man kann also zwischen verschiedenen (und in Zukunft
  2439.   vielleicht noch weiteren) Komprimiermodi wählen. (`NUKE' ist eine gute
  2440.   Wahl. Der einzige Nachteil ist, daß die Größe von Dateien durch das
  2441.   verfügbare RAM beschränkt ist, unter 2MBytes RAM kann man Probleme
  2442.   bekommen.)
  2443.   
  2444.      XPKDisk von Olaf 'Rhialto' Seibert ist ein anderer
  2445.   Festplattenkomprimierer, der die Vorteile der XPK-libraries benützt.
  2446.   Es komprimiert nicht die Files, sondern kreiert eine Pseudo-Partition
  2447.   und komprimiert darauf ganze Tracks.  Der große Vorteil dabei ist,
  2448.   daß die Filegröße nicht beschränkt wird.  XPKDisk arbeitet ähnlich
  2449.   wie das trackdisk.device und verbraucht daher nicht zu viel temporären
  2450.   Speicher.
  2451.   
  2452.      Achtung bei Verwendung von ReOrg auf einer komprimierten Partition:
  2453.   ReOrg sollte genug Speicher frei lassen für die XPKDisk-Puffer.  Wegen
  2454.   der Pufferverwaltung von ReOrg kann man wenige Puffer für xpkdisk
  2455.   verwenden (möglicherweise nur 2 oder 3). Wer nicht Bescheid weiß
  2456.   über den Speicherverbrauch von XFH oder XPKDisk, sollte ReOrg nicht
  2457.   verwenden.
  2458.   
  2459.      Eine andere Möglichkeit ist EPU. Es ist Shareware und sollte
  2460.   dasselbe wie XFH bieten und außerdem ohne die Probleme mit der
  2461.   Dateigröße.
  2462.   
  2463.      Quellen: Aminet, Directory `util/pack' und Fish-Disk 754 (XFH) sowie
  2464.   858 (EPU).
  2465.   
  2466.   7.4 Wo bekomme ich Fish-Disk xxx?
  2467.   =================================
  2468.   
  2469.      Einige FTP-Server haben genügend Platz oder ein CD-Rom gemounted und
  2470.   haben alle Fish-Disks online verfügbar:
  2471.        ftp.isca.uiowa.edu      (USA, directory `/amiga/fx/fxxx')
  2472.        ftp.hawaii.edu          (USA, directory `/pub/amiga/fish')
  2473.        ftp.funet.fi            (Finland, directory `/pub/amiga/fish')
  2474.      Beachten Sie bitte, daß die CD-Roms nicht immer gemounted sind.
  2475.   Siehe FTP.
  2476.   
  2477.      Eine andere Möglichkeit wäre, Ihren örtlichen PD-Händler zu
  2478.   fragen. :-)
  2479.   
  2480.   7.5 Wie füllt man die Tintenkartuschen der HPDeskjet-Drucker nach?
  2481.   ==================================================================
  2482.   
  2483.      Dies ist eigentlich keine Amiga-spezifische Frage, taucht aber in den
  2484.   Amiga-Newsgruppen so hartnäckig und regelmäßig auf, daß sie auch in
  2485.   dieser FAQ beantwortet wird.
  2486.   
  2487.      Die Drucker der Deskjet-Serie von HP besitzen einen in den Druckkopf
  2488.   integrierten Tinten-Vorratsbehälter. Wenn dieser Behälter leer ist,
  2489.   muß normalerweise der komplette Druckkopf ausgetauscht werden. Doch es
  2490.   geht auch billiger: Man kann den Tintenbehälter mit etwas Übung
  2491.   problemlos mehrfach nachfüllen.
  2492.   
  2493.      Man benötigt dazu eine Einwegspritze mit passender Nadel, etwas
  2494.   schwarze Füllfederhalter-Tinte (z.B. Pelikan 4001) sowie Isopropanol
  2495.   (a.k.a. Isopropylalkohol, erhältlich in jeder gutsortierten Apotheke).
  2496.   
  2497.      Als erstes gibt man in das neu gekaufte Tintenfäßchen einige
  2498.   Tropfen Isopropanol (ca. 0,5-1,0 ml pro 30 ml Tinte). Für eine
  2499.   Füllung des Druckkopfes zieht man dann etwa 10-15 ml der Tintenmischung
  2500.   in die Spritze, sticht mit der Nadel in die Öffnung im oberen
  2501.   (grünen) Teil des Druckkopfs und spritzt dann die Tinte langsam und
  2502.   vorsichtig in den Druckkopf.  Achten Sie darauf, daß Sie die Nadel
  2503.   nicht ganz "bis zum Anschlag" einstechen, während des Einspritzens
  2504.   muß die verdrängte Luft noch durch die Öffnung entweichen können,
  2505.   sonst tritt die Tinte eventuell durch die Düsen am unteren Ende des
  2506.   Druckkopfs aus.
  2507.   
  2508.      Die Dosierung des Isopropanols ist etwas kitzlig; zuviel fördert
  2509.   das Verlaufen der Tinte auf dem Papier und führt zu einem unsauberen
  2510.   Schriftbild, zuwenig führt eventuell zu verstopften Düsen am
  2511.   Druckkopf.
  2512.   
  2513.      Es gibt mittlerweile von verschiedenen Herstellern auch sogenannte
  2514.   Nachfüllkits, die passende Spritzen und fertig vorbereitete
  2515.   Tintenmischungen enthalten. Preislich liegen diese "Fertiglösungen"
  2516.   etwa in der Mitte zwischen der Füllertinte und einem neuen Druckkopf.
  2517.   
  2518.      Die neuen Spezialdruckköpfe mit doppeltem Volumen lassen sich
  2519.   übrigens angeblich nicht mehr nachfüllen - es wäre schön, wenn das
  2520.   jemand mal aus eigener Erfahrung bestätigen oder verneinen könnte...?
  2521.   
  2522.      Jürgen Weinelt, jow@rz.uni-wuerzburg.de
  2523.   
  2524.   7.6 Was ist MUI und wo bekomme ich es?
  2525.   ======================================
  2526.   
  2527.      MUI besteht aus einer Reihe von shared-Libraries, die eine sehr
  2528.   komfortable graphische Benutzeroberfläche (GUI = graphical user
  2529.   interface) ermöglichen. Die generelle Idee von MUI ist es, den
  2530.   Programmierer nur die logische Struktur des GUI festlegen zu lassen.
  2531.   Das konkrete Aussehen (Fonts, Fenstergroesse, Fenster auf Workbench,
  2532.   eigenem oder öffentlichem Screen usw.) wird durch den Benutzer
  2533.   bestimmt. Für den Programmierer ist MUI erheblich einfacher und
  2534.   umfangreicher als die `gadtools.library'. Andererseits sind mit MUI
  2535.   erzeugte GUI's langsamer als die mit der gadtools.library erzeugten,
  2536.   vor allem auf alten 68000er-Maschinen.
  2537.   
  2538.      MUI besteht aus zwei Archiven, eines für Programmierer und eines
  2539.   für normale Benutzer. Quellen: Aminet, `dev/misc'.
  2540.   
  2541.   8 Software-Quellen und andere Informationen?
  2542.   ********************************************
  2543.   
  2544.      Drei Fragen entstehen in diesem Zusammenhang: Was für Programme
  2545.   gibt es überhaupt, wo und wie bekomme ich sie und wie kann ich sie
  2546.   dann nach Hause bringen?
  2547.   
  2548.   8.1 Dateien und Datenbanken zur frei kopierbaren Software
  2549.   =========================================================
  2550.   
  2551.      Natürlich muß man wissen, wo man welche Software überhaupt findet.
  2552.   Viele wichtige Dinge sind bereits angegeben worden, wie ich hoffe.
  2553.   Weitere Informationen liefern:
  2554.   
  2555.   *AmigaSciUnixSchool*
  2556.        ist eine Software-Liste im Ascii-Format. Sie wird monatlich in den
  2557.        Newsgroups `comp.sys.amiga.applications', `comp.unix.amiga' und
  2558.        `news.answers' gepostet. (Aminet:
  2559.        `text/doc/AmigaSciUnixSchool-4.01').  Sie behandelt alles, was
  2560.        auch hier angegeben wurde und vieles mehr, z.B.  GNU-Software,
  2561.        Libraries (Link-Libraries und shared Libraries), Shells,
  2562.        Unix-Kommandos, wissenschaftliche Software und vieles mehr.
  2563.   
  2564.   *FishCon*
  2565.        sind die gesammelten Inhaltsverzeichnisse der Fish-Disketten im
  2566.        Ascii-Format.  (Aminet: `fish/doc/fishcon-???.lzh')
  2567.   
  2568.   *FishXref*
  2569.        ist ein Kreuzreferenzverzeichnis der FishCon-Dateien, ebenfalls im
  2570.        Ascii-Format (`fish/doc/fishxref-???.lzh' auf Aminet)
  2571.   
  2572.   *KingFisher*
  2573.        Eine Fish-Disk-Datenbank, getrennt in Programm (Fish-Disk 863 oder
  2574.        Aminet, `fish/doc/Kingfisher1_30.lha') und Datendatei
  2575.        `fish/doc/KFData850.lha', die die Suche nach Namen oder Kontext
  2576.        ermöglichen.
  2577.   
  2578.   8.2 Eine Sammlung von Testberichten
  2579.   ===================================
  2580.   
  2581.      `Comp.sys.amiga.reviews' ist eine moderierte Newsgruppe, in der
  2582.   ausschließlich Testberichte über Soft- und Hardware, Bücher und alles
  2583.   mögliche Andere, den Amiga Betreffendes veröffentlicht werden. Es ist
  2584.   immer eine gute Idee, hier nachzuschauen, wenn man an etwas Bestimmtem
  2585.   interessiert ist. Natürlich findet man in der eigentlichen Newsgruppe
  2586.   nur die jeweils neuesten Berichte, aber die älteren werden archiviert
  2587.   und sind per FTP erhältlich bei `math.uh.edu', Directory
  2588.   `/pub/Amiga/comp.sys.amiga.reviews' oder auf den Fish-CD's.
  2589.   
  2590.   8.3 Empfangen von Dateien von einem FTP-Server
  2591.   ==============================================
  2592.   
  2593.      Software zu laden ist einfach, wenn man Zugang zum Internet mit einem
  2594.   Programm namens FTP (File Transfer Program) hat. Unix-Computer haben
  2595.   häufig beides.
  2596.   
  2597.      FTP erlaubt Zugriffe auf andere Maschinen zum Speichern und/oder
  2598.   Laden von Dateien. Natürlich braucht man eine Zugangsberechtigung auf
  2599.   der anderen Maschine, aber viele Maschinen erlauben Zugang für jeden,
  2600.   wenn man sich als Benutzer `ftp' oder `anonymous' anmeldet und als
  2601.   Paßwort die eigene Mailadresse angibt. Für Amiga-Besitzer sind die
  2602.   wichtigsten FTP-Server die Aminet-Server, die sich gegenseitig Dateien
  2603.   übertragen und so im wesentlichen dieselben Dateien anbieten.
  2604.   Aminet-Server sind
  2605.        Land         Name                     IP Adresse      Pfad         Files
  2606.        
  2607.        USA (MO)     ftp.wustl.edu            128.252.135.4   pub/aminet/    ALL
  2608.        USA (CA)     ftp.cdrom.com            192.216.222.5   pub/aminet/   9000
  2609.        USA (TX)     ftp.etsu.edu             192.43.199.20   pub/aminet/   5000
  2610.        USA (WI)     ftp.netnet.net           198.70.64.3     pub/aminet/  10000
  2611.        Scandinavia  ftp.luth.se              130.240.18.2    pub/aminet/  10000
  2612.        Switzerland  ftp.eunet.ch             146.228.10.16   pub/aminet/   5500
  2613.        Switzerland  ftp.math.ethz.ch         129.132.104.6   pub/aminet/   1000
  2614.        Switzerland  litamiga.epfl.ch         128.178.151.32  pub/aminet/    300
  2615.        Germany      kelly.uni-paderborn.de   131.234.128.206 pub/aminet/    ALL
  2616.        Germany      ftp.uni-paderborn.de     131.234.2.42    pub/aminet/    ALL
  2617.        Germany      ftp.uni-erlangen.de      131.188.3.2     pub/aminet/   7000
  2618.        Germany      ftp.uni-oldenburg.de     134.106.40.9    pub/aminet/   2500
  2619.        Germany      ftp.uni-kl.de            131.246.9.95    pub/aminet/   1500
  2620.        Germany      ftp.uni-stuttgart.de     129.69.18.15    cd  aminet    4500
  2621.        Germany      ftp.uni-siegen.de        141.99.128.1    pub/aminet/   1500
  2622.        Germany      ftp.cs.tu-berlin.de      130.149.17.7    pub/aminet/   4000
  2623.        Germany      ftp.stud.fh-heilbronn.de 141.7.1.41      pub/aminet/    600
  2624.        Germany      ftp.tu-chemnitz.de       192.108.33.193  pub/aminet/   4000
  2625.        Germany      ftp.rz.uni-wuerzburg.de  132.187.1.2     pub/aminet/    700
  2626.        UK           ftp.doc.ic.ac.uk         155.198.1.40    pub/aminet/    ALL
  2627.        UK           micros.hensa.ac.uk       148.88.8.84     pub/aminet/   8500
  2628.   
  2629.      Alle diese Server haben ein Directory `/pub/aminet', wo man massig
  2630.   Software findet. Bitte benutzen Sie einen Server in Ihrer Nähe! Einige
  2631.   andere wichtige Server sind
  2632.        ftp.funet.fi             (Finnland)
  2633.        ftp.isca.uiowa.edu       (USA)
  2634.        ftp.hawaii.edu           (USA)
  2635.        ftp.cso.uiuc.edu         (USA)
  2636.        ftp.dfv.rwth-aachen.de   (Deutschland)
  2637.      Grind, Aachen und Erlangen haben z.B. die komplette Fish-Disk-Serie
  2638.   parat!  Siehe Fish-Disk xxx.
  2639.   
  2640.      Um sich mit einem Server in Verbindung zu setzen (z.B.
  2641.   `ftp.uni-erlangen.de'), gibt man ein:
  2642.        ftp ftp.uni-erlangen.de
  2643.   
  2644.   Der Server antwortet mit der Aufforderung, den Benutzernamen einzugeben.
  2645.   Als Benutzernamen gibt man
  2646.        ftp
  2647.   
  2648.   ein. Nun wird man nach einem Paßwort gefragt. Hier sollte man seine
  2649.   Mailadresse (wenn man eine hat, sonst einfach ftp) eingeben.
  2650.   
  2651.      Nun ist man mit dem Server verbunden und kann eine Reihe von
  2652.   Kommandos ausführen. Die wichtigsten sind:
  2653.   *?*
  2654.        Gibt einen Hilfstext aus. Man kann auch *? Kommando* eingeben, um
  2655.        Hilfe zu einem bestimmten Kommando zu verlangen.
  2656.   
  2657.   *bin*
  2658.        Informiert FTP, daß man binäre Dateien transportieren will. Es
  2659.        ist immer eine gute Idee, dies als allererstes Kommando
  2660.        einzugeben! Ohne dieses Kommando können empfangene Dateien
  2661.        verändert und damit nutzlos sein.
  2662.   
  2663.   *get <Datei>*
  2664.        Lädt die angegebene Datei vom Server. Auf den meisten
  2665.        Unix-Maschinen kann man auch `get file.txt -' oder `get file.txt
  2666.        |more' eingeben, um sich die angegebene Datei auf den Bildschirm
  2667.        ausgeben zu lassen. (Achtung: Hier darf *kein* Blank zwischen |
  2668.        und dem Wort more sein!)
  2669.   
  2670.   *mget <pat>*
  2671.        Lädt die angegebenen Dateien. Im Unterschied zu get dürfen hier
  2672.        auch Unix-Wildcards (* oder ?) verwendet werden.
  2673.   
  2674.   *put <file>*
  2675.   *mput <pat>*
  2676.        Wie get und mget, aber es werden Dateien *zum* Server geschoben.
  2677.        Dies ist meist nur in speziellen Directories mit Namen wie
  2678.        `incoming' oder `new' erlaubt. Man kann dort Dateien plazieren,
  2679.        die man auf dem Aminet frei zugänglich machen will.
  2680.   
  2681.   *cd <dir>*
  2682.        Wie das übliche cd. Die Kommandos get, mget, put, mput, dir und
  2683.        ls beziehen sich auf das angegebene Directory.
  2684.   
  2685.   *dir [<dir>]*
  2686.   *ls [<dir>]*
  2687.        Wie `list' und `dir' auf dem Amiga. Beachten Sie allerdings, daß
  2688.        FTP-dir dem Amiga-list entspricht.
  2689.   
  2690.   *bye*
  2691.        Verläßt das FTP-Programm.
  2692.   
  2693.      Wenn man FTP das erste Mal benutzt hat, wird man feststellen, daß
  2694.   immer die gleichen Schritte ausgeführt werden:
  2695.     1. Benutzernamen eingeben (meist ftp)
  2696.   
  2697.     2. Paßwort eingeben (meist die Mailadresse)
  2698.   
  2699.     3. bin eingeben
  2700.   
  2701.     4. In ein bestimmtes Directory wechseln (meist `/pub/aminet/...')
  2702.           Dies kann man automatisieren. Dazu braucht man eine Datei namens
  2703.   `.netrc' in seinem Home-Directory. Diese muß unbedingt nur für Sie
  2704.   selbst lesbar sein, FTP akzeptiert sie sonst nicht! (Dies erreichen Sie
  2705.   unter Unix mit dem Kommando `chmod go-rwx .netrc'.) Die .netrc-Datei
  2706.   enthält für eine Reihe von Servern je einen Eintrag, die durch
  2707.   Leerzeilen getrennt werden. Ein typischer Eintrag sieht etwa so aus:
  2708.        machine ftp.uni-erlangen.de
  2709.        login ftp
  2710.        password <Ihre Mailaddresse> oder <ftp>
  2711.        macdef init
  2712.            bin
  2713.            cd pub/aminet
  2714.      Auf einigen Computern ist auch der Servername `default' erlaubt, der
  2715.   für alle anderen Maschinen außer den Angegebenen gilt.
  2716.   
  2717.   8.4 Empfangen von Dateien von einem Mail-Server
  2718.   ===============================================
  2719.   
  2720.      Eine andere Möglichkeit, Dateien zu empfangen, sind die
  2721.   Mail-Server. Dazu braucht man die Möglichkeit, an Internet-Adressen
  2722.   Mail zu verschicken und zu empfangen. Es funktioniert, indem man an den
  2723.   Server eine Mail schickt, in der man ihm sagt, was man haben möchte.
  2724.   Die Dateien werden dann ebenfalls als Mail geschickt, allerdings
  2725.   kodiert. Man braucht ein Programm namens `uudecode', um sie zu
  2726.   dekodieren.
  2727.   
  2728.      Die wichtigsten Mail-Server sind:
  2729.        ftpmail@decwrl.dec.com
  2730.        mailserver@nic.funet.fi
  2731.        mailserver@leo.org
  2732.        mrcserv@janus.mtroyal.ab.ca
  2733.        mail-server@ftp.cs.tu-berlin.de
  2734.        mail-server@rtfm.mit.edu
  2735.        ftp-mail@uni-paderborn.de
  2736.   
  2737.      Die an einen Server zu schickende Mail darf eine Reihe von Kommandos
  2738.   enthalten. Die wichtigsten sind:
  2739.   *Help*
  2740.        Veranlaßt den Server, einem einen Hilfstext zu mailen, in dem eine
  2741.        umfangreiche Anleitung enthalten ist.
  2742.   
  2743.   *Limit <Anzahl>*
  2744.        Gibt an, daß eine einzelne Mail höchstens <Anzahl> KByte lang
  2745.        sein darf.  Größere Dateien werden in mehrere kleinere
  2746.        aufgeteilt, die als separate Mails verschickt werden. Beachten
  2747.        Sie, daß einzelne Mails durch die Deodierung und den Mailheader
  2748.        auch etwas länger sein können!
  2749.   
  2750.   *Cwd <dir>*
  2751.        Wie der cd-Befehl; das angegebene Directory wird von den Kommandos
  2752.        send und dir benutzt.
  2753.   
  2754.   *Index*
  2755.        liefert eine Liste von Dateien und/oder Directories, die der
  2756.        Server anbietet.  Diese Liste kann *sehr* lang werden! (Berlin
  2757.        z.B. 1 MByte)
  2758.   
  2759.   *Index <item>*
  2760.        liefert eine Liste von Dateien, deren Namen <item> enthält.
  2761.   
  2762.   *Dir [<dir>]*
  2763.        liefert eine Liste von Dateien und Directories im angegebenen
  2764.        Directory
  2765.   
  2766.   *Send <file1> <file2> ... <fileN>*
  2767.        Liefert einem die angegebenen Dateien
  2768.   
  2769.   *Begin*
  2770.        Veranlaßt den Server, alle Zeilen oberhalb zu ignorieren.
  2771.   
  2772.   *End*
  2773.        Wie Begin, aber für die unten folgenden Zeilen. (Eine Signatur
  2774.        zum Beispiel!) Eine typische Mail an einen Mail-Server sieht also
  2775.   so aus:
  2776.        BEGIN
  2777.        CD /pub/aminet/util/arc
  2778.        SEND LhA_e138.run
  2779.        END
  2780.   
  2781.   8.5 Empfangen von Dateien von einer Mailbox
  2782.   ===========================================
  2783.   
  2784.      Man kann sich auch Daten von einem der vielen BBS (`Bulletin Board
  2785.   System') holen. Zumeist werden diese von privaten Anwendern betrieben,
  2786.   und deshalb gibt es fast überall eine oder mehrere BBS, die man zum
  2787.   Ortstarif erreichen kann.
  2788.   
  2789.      Mailboxen bieten zumeist Möglichkeiten zum Meinungs- und
  2790.   Datenaustausch unter allen Teilnehmern, sie stellen eine Reihe von
  2791.   Programmen zum `Saugen' zur Verfügung, und sie bieten oft noch einige
  2792.   andere Serviceleistungen an.
  2793.   
  2794.      Hier folgt eine Liste aller mir bekannten Amiga-Mailboxen.  Bitte
  2795.   schreibt mir die Namen und alle Telefonnummern der Euch bekannten
  2796.   Amiga-Mailboxen sowie (wo nötig) eine kleine Bemerkung, danke.
  2797.   
  2798.        Mailbox        Vorwahl  Nummer1 Nummer2 Nummer3 Bemerkung
  2799.        ------------------------------------------------------------
  2800.        IMAGINE *      de-089   6892721
  2801.        AMIGA WORK *   de-089   6256183 6256159
  2802.        COMCOR *       de-089   7141035                 Computer Corner BBS
  2803.        FORTRESS       de-089   8915316 8110130
  2804.        Black Empire   de-089   472396  6885313
  2805.        AMIGA WORK II  de-089   6258696
  2806.        KUCKUCKSNEST   de-089   183000
  2807.        ERESSEA        de-089   6888534
  2808.        MAGIC          de-08121 45578
  2809.        NAMELESS       de-08285 1008    1630            Burtenbach
  2810.        NATHAN         de-08191 65542                   Landsberg
  2811.        STAR BBS       de-08232 6077                    Schwabmünchen
  2812.        Shannara       de-09931 72923                   Plattling
  2813.        Amiga Universe de-07195 61970   920677  910928  Aminet,Usenet,XNET,GERNET,2.5GB
  2814.        Double Density de-0481  81030   85148   85149   Heide/Holstein,ISDN(85147,85140)
  2815.   
  2816.      wobei `de' hier für Deutschland steht.
  2817.   
  2818.   8.6 Die Fish-PD-Serie
  2819.   =====================
  2820.   
  2821.      Eine sehr gute Quelle ist die Fish-PD-Serie. Man muß zwischen
  2822.   Disketten und CDs unterscheiden.
  2823.   
  2824.   8.6.1 Die Amiga-Library-Disks
  2825.   -----------------------------
  2826.   
  2827.      Fred Fish hat in der Mitte der Achtziger begonnen, frei kopierbare
  2828.   Software zu sammeln. Es gibt inzwischen 1000 Disketten und viele sehr
  2829.   gute Software darauf.  Viele Amiga-Händler bieten sie an und die
  2830.   meisten Amiga-Zeitschriften enthalten Anbieter, die sie für ca. 3 DM
  2831.   pro Diskette mit der Post versenden.  Die Disketten werden nicht mehr
  2832.   von Fred Fish selbst fortgeführt.  Es gibt einen Drittanbieter, der
  2833.   die neu erscheinende Software auf den Fresh-Fish-CDs weiterhin in
  2834.   Diskettenform anbietet.
  2835.   
  2836.      Es gibt Dinge, die auf den Fish-Disketten, nicht aber auf dem Aminet
  2837.   verfügbar sind. Trotzdem ist es möglich, sie per FTP zu bekommen.
  2838.   Siehe Fish-Disk xxx.
  2839.   
  2840.   8.6.2 Die Fresh-Fish-Serie
  2841.   --------------------------
  2842.   
  2843.      Fred Fish bietet weiterhin frei kopierbare Software an, allerdings
  2844.   jetzt auf CD. Es gibt zwei verschiedene Arten:
  2845.     1. Die monatlichen CDs sind in drei Teile unterteilt:
  2846.          1. Neues Material, sowohl auf den Disketten erscheinende als
  2847.             auch dort nicht erscheinende Software. Auf der ersten CD sind
  2848.             das etwa 84Mb.
  2849.   
  2850.          2. Nützliche, bereits installierte Software, die direkt von der
  2851.             CD benutzt werden können und damit Platz auf der Festplatte
  2852.             sparen. (GNU Emacs, Gnu C, GNU C++, Amiga E, PasTeX,
  2853.             AmigaGuide, Installer, 2.0 und 3.0-Includes, verschiedene
  2854.             Archivierprogramme, das AmiCDROM Filesystem, GNU und
  2855.             BSD-Utilities...) Dieser Teil macht etwa 150Mb auf der ersten
  2856.             Disk aus.
  2857.   
  2858.          3. Älteres Material, das bereits früher erschienen ist.
  2859.             (Ungefähr 404Mb auf der ersten CD, entsprechend Fish-Disk
  2860.             600-910.)
  2861.   
  2862.     2. Die zweite Sorte enthält im wesentlichen mehr Software, dafür
  2863.        aber in gepacktem Format. (Diese CD's sind speziell für Mailboxen
  2864.        gedacht, die dadurch diese Software zum Downloaden anbieten.)
  2865.   
  2866.   Ich empfehle vor allem die erste Sorte. Sie kosten etwa 20$ plus 5$
  2867.   Versandkosten und können bei der folgenden Adresse bestellt werden:
  2868.        Amiga Library Services
  2869.        610 N. Alma School Road, Suite 18
  2870.        Chandler, AZ 85224-3687
  2871.        U.S.A.
  2872.        
  2873.        Phone/FAX: (602) 917-0917
  2874.      Als beste Zahlungsweise haben sich angeblich Kreditkarten bewährt.
  2875.   Allerdings bin ich überfragt, welche von Fred akzeptiert werden.
  2876.   
  2877.   8.7 Wie kann ich MS-Dos-Disketten lesen und schreiben?
  2878.   ======================================================
  2879.   
  2880.      Für Besitzer von Workbench 2.1 oder höher ist das kein Problem: Das
  2881.   Programm CrossDos ist da Teil der Workbench. Man muß lediglich `pc0:'
  2882.   mounten, indem man die Datei `Sys:Storage/DOSDrivers/pc0:' startet oder
  2883.   nach `Devs:Storage/DOSDrivers' verschiebt. MS-Dos-Disketten in `df0:'
  2884.   können nun ganz normal behandelt werden, indem man jeweils das Wort
  2885.   `df0:' durch `pc0:' ersetzt. Z.B. kann man das Directory mit `dir pc0:'
  2886.   anzeigen.
  2887.   
  2888.      Alle anderen benötigen ein Programm namens `msh' (Aminet, Directory
  2889.   `misc/emu' oder Fish-Disk 382). Nachdem man die Datei `devs:MountList'
  2890.   wie in der Dokumentation angegeben verändert hat, muß man lediglich
  2891.   im CLI das Kommando `mount msh:' eingeben und kann dann wie bei
  2892.   CrossDos damit verfahren, wobei man natürlich jeweils `msh:' anstelle
  2893.   von `pc0:' angeben muß.
  2894.   
  2895.   8.8 Wie transportiere ich sehr große Dateien
  2896.   ============================================
  2897.   
  2898.      Es gibt einige Archive, die zu groß sind, um auf eine Diskette
  2899.   passen.  (Das gcc-Archiv ist z.B. 3,5 MByte groß.) Um diese zu
  2900.   transportieren, benötigt man ein Programm, das sie in kleinere Teile
  2901.   aufteilt, die dann auf verschiedenen Dateien transportiert werden. Ich
  2902.   empfehle Martin Schlodders `Splitter'. (Aminet,
  2903.   `util/misc/splitter_121.lha') Das Archiv enthält Binaries für den
  2904.   Amiga und MS-DOS und der Quelltext sollte ohne Probleme auf jedem
  2905.   Unix-Rechner zu compilieren sein.
  2906.   
  2907.   8.9 Diskussionen über Mail
  2908.   ==========================
  2909.   
  2910.      Eine Mail-Liste ist ein Server, der es ermöglicht, sich mit anderen
  2911.   Leuten über ein bestimmtes Thema via Mail zu unterhalten. Der Server
  2912.   unterhält eine Liste interessierter Teilnehmer, die am Thema
  2913.   interessiert sind. Z.B. geht es bei der gcc-Mailliste um Bugs, neue
  2914.   Features und andere Probleme rund um den gcc. (siehe Compiler) Wenn ein
  2915.   Teilnehmer eine Mail an den Server schickt, dann wird sie vom Server an
  2916.   alle anderen Teilnehmer weitergeleitet.
  2917.   
  2918.      Man meldet sich als Teilnehmer an, indem man eine Mail an den Server
  2919.   schickt, die z.B. das Wort `Subscribe' enthält. Umgekehrt kann man
  2920.   sich auf ähnliche Weise abmelden, wenn man an der Mail-Liste nicht
  2921.   mehr länger interessiert ist.
  2922.   
  2923.      Unglücklicherweise erwarten die Server zum Teil eine recht
  2924.   unterschiedliche Syntax bei der Anmeldung. Allerdings unterstützen sie
  2925.   alle eine Hilfefunktion: Schickt man eine Mail mit dem Wort `Help' an
  2926.   den Server, so antwortet dieser mit einer ausführlichen Beschreibung.
  2927.   
  2928.      Einige interessante Mail-Listen sind:
  2929.        Topic           Server
  2930.        
  2931.        Amok            listserv@amokle.stgt.sub.org
  2932.        Dice            dice-request@hactar.hanse.de
  2933.        Gcc             listserv@lists.funet.fi
  2934.        Lisp            amigalisp@contessa.phone.net
  2935.        Mui             mui-request@taloa.unice.fr
  2936.        Oberon-A        oberon-a-request@wossname.apana.org.au
  2937.   
  2938.   8.10 Andere FAQ's
  2939.   =================
  2940.   
  2941.   *Amiga related books FAQ*
  2942.        Enthält eine Liste von Büchern zum Amiga, komplett mit
  2943.        Kurzbesprechungen, Preisen und Herkunftsangaben.  Newsgruppen:
  2944.        comp.sys.amiga.misc, comp.sys.amiga.introduction,
  2945.        comp.sys.amiga.programmer (monatlich) HTML:
  2946.        `http://eksl-www.cs.umass.edu/~atkin/amiga/books.faq.html' Ftp:
  2947.        rtfm.mit.edu, `pub/usenet/comp.sys.amiga.misc' Betreuer: Marc
  2948.        Atkin, atkin@cs.umass.edu
  2949.   
  2950.   *AmiTCP/IP FAQ*
  2951.        Dies ist für Anwender von AmiTCP/IP, einer Reihe von Programmen,
  2952.        die das Einbinden eines Amigas in ein TCP/IP-Netzwerk ermöglichen.
  2953.        (Die meisten bekannten Netze, das Internet z.B., benutzen TCP/IP.)
  2954.        Newsgruppen: comp.sys.amiga.misc, comp.sys.amiga.datacomm,
  2955.        comp.sys.amiga.networking (zweiwöchentlich) Ftp: rtfm.mit.edu,
  2956.        pub/usenet/comp.sys.amiga.networking Betreuer: Neil J. McRae
  2957.        (atcpfaq@domino.demon.co.uk)
  2958.   
  2959.   *Amiga Networking FAQ*
  2960.        Im Gegensatz zur AmiTCP/IP-FAQ möchte diese alle Aspekte des
  2961.        Netzwerkelns abdecken, z.B. auch Envoy.  Newsgruppen:
  2962.        comp.sys.amiga.datacomm, comp.sys.amiga.hardware Ftp:
  2963.        rtfm.mit.edu, pub/usenet/comp.sys.amiga.networking Betreuer:
  2964.        Richard Norman (norman@afas.msfc.nasa.gov)
  2965.   
  2966.   *Point Manager FAQ*
  2967.        Netzwerke scheinen wirklich kompliziert zu sein: Dies ist die
  2968.        dritte FAQ zum Thema, diesmal zu einem speziellen FidoNet-Client
  2969.        (einem sogenannten Point), dem Point Manager.  Newsgruppen:
  2970.        comp.sys.amiga.datacomm Ftp: rtfm.mit.edu,
  2971.        pub/usenet/comp.sys.amiga.datacomm Betreuer: Eric Krieger
  2972.        (pm_faq@quasar.hacktic.nl)
  2973.   
  2974.   *All about FTP*
  2975.        Erklärt den Umgang mit dem Filetransferprogramm FTP. Siehe FTP.
  2976.        Newsgruppen: comp.sys.amiga.misc (Monatlich) Ftp: Aminet,
  2977.        info/start Betreuer: Urban Dominik Müller
  2978.        (umueller@amiga.icu.net.ch)
  2979.   
  2980.   Das Amiga-FAQ-Archiv
  2981.   ********************
  2982.   
  2983.      Die Amiga-FAQ ist in verschiedenen Formaten erhältlich: Im
  2984.   Ascii-Format (wie sie in den Netzen gepostet wird), im
  2985.   AmigaGuide-Format (wie sie auf einem Amiga wohl am praktischsten ist)
  2986.   und im dvi-Format zum Ausdrucken. Weiter gibt es einige Dinge, die
  2987.   nützlich oder interessant sein könnten, die aber nicht in den Text
  2988.   eingebunden werden konnten:
  2989.        txt/amiga.history       Zur Geschichte des Amiga
  2990.        txt/story.txt           Die Commodore-Story (oder: Die Tramiel-
  2991.                                Story ;-)
  2992.        txt/amiga.newsgroups    Übersicht über comp.sys.amiga.*
  2993.        txt/amiga.sites         Liste von FTP-Servern
  2994.        txt/AmigaOverview.tex   Übersicht über die Amiga-Soft- und Hardware
  2995.        txt/Hardware.tips       Für Hardware-Bastler
  2996.        txt/Nullmodem.txt       Anleitung zum Bau eines Nullmodems
  2997.        src/JWSplit.c           Der Quelltext eines Dateisplitters
  2998.        src/JWJoin.c            Das Gegenstück zu JWSplit.c
  2999.        src/addtoc.c            Fügt ein Inhaltsverzeichnis zu mit texinfo
  3000.                                erzeugten doc's bei (dieser Text verwendet es)
  3001.        programmers/*           Für Programmierer: Pragmas, Vararg-Versionen
  3002.                                einiger Tag-Funktionen und einige amiga.lib
  3003.                                Funktionen (HookEntry, DoMethod)
  3004.   
  3005.      Um diese öffentlich zugänglich zu machen, habe ich mich dazu
  3006.   entschlossen, diese in einem Archiv zu sammeln. Es heißt
  3007.   `AmigaFAQg.lha'; Sie finden es per FTP im Aminet, Directory `docs/misc'.
  3008.   
  3009.   Beiträge zur Amiga-FAQ
  3010.   **********************
  3011.   
  3012.      Die FAQ kann nicht nützlich sein und nicht weiterentwickelt werden
  3013.   ohne Ihre Hilfe. Vorschläge, Beiträge, neue Fragen und Antworten,
  3014.   Kritik, alles ist willkommen.
  3015.   
  3016.      Bitte beachten Sie, daß einige sehr wesentliche Themen bis jetzt
  3017.   unterrepräsentiert sind oder gänzlich fehlen: Nichts über Animation,
  3018.   Sound, Grafikkarten. (Alles über die *endgültige* Merlin-Software
  3019.   ...) Dies sind einige der Stärken des Amiga! Aber ich verstehe nichts
  3020.   davon :-(
  3021.   
  3022.      Also nehmen Sie ihre Tastatur (Ihren Bleistift? Na gut, wenn's sein
  3023.   muß...) und schreiben Sie an:
  3024.   
  3025.              Ignaz Kellerer
  3026.              Georg-Habel-Str. 11
  3027.        81241 München (Deutschland)
  3028.              Tel. (+49) 089 / 885147
  3029.        
  3030.              Internet: kellerer@informatik.tu-muenchen.de
  3031.   
  3032.   Danksagungen
  3033.   ************
  3034.   
  3035.      Meinen Dank an:
  3036.   *Reinhard Spisser and Sebastiano Vigna*
  3037.        für die Amiga-Version von TexInfo. Dieser Text wurde damit
  3038.        erstellt.
  3039.   
  3040.   *The Free Software Foundation*
  3041.        für die Originalversion von TexInfo und viele andere
  3042.        hervorragende Programme.
  3043.   
  3044.   *Dylan McNamee*
  3045.        für die Abschnitte über Editoren, Textverarbeitungen, DTP und
  3046.        PostScript.
  3047.   
  3048.   *Joseph Luk*
  3049.        für die Abschnitte über Chunky/Planar und Double-Buffering
  3050.   
  3051.   *Urban Dominik Müller*
  3052.        für die FAQ über FTP- und Mail-Server
  3053.   
  3054.   *Lars Hecking (lhecking@nmrc.ucc.ie)*
  3055.   *Philippe Brand (phb@colombo.telesys-innov.fr)*
  3056.        für den Abschnitt über gcc
  3057.   
  3058.   *Jochen Wiedmann (zrawi01@decap2.zdv.uni-tuebingen.de)*
  3059.        für die Zusammenstellung und das Posten der AmigaFAQ bis Juli
  3060.        1994.
  3061.   
  3062.   Index
  3063.   *****
  3064.   
  3065.   
  3066.   
  3067.    . (Ersatz für)                        Dot-Ersatz
  3068.    .arj                                   Endungen
  3069.    .dms                                   Endungen
  3070.    .gz                                    Endungen
  3071.    .lha                                   Endungen
  3072.    .lzh                                   Endungen
  3073.    .netrc                                 FTP
  3074.    .tar                                   Endungen
  3075.    .Z                                     Endungen
  3076.    .z                                     Endungen
  3077.    .zip                                   Endungen
  3078.    .zom                                   Endungen
  3079.    .zoo                                   Endungen
  3080.    68EC020                                68EC0xx
  3081.    68EC030                                68EC0xx
  3082.    68LC040                                68EC0xx
  3083.    A1200 (Festplatte)                     A1200-HD
  3084.    Aktuelles Directory                    Dot-Ersatz
  3085.    AmiBooksFAQ                            FAQs
  3086.    Amiga networking FAQ                   FAQs
  3087.    Amiga-FAQ-Archiv                       Amiga-FAQ-Archiv
  3088.    Amiga-libraries (gcc)                  Amiga-Libraries
  3089.    Amiga-Library-Disks                    Fish-Floppies
  3090.    AmigaBasic                             AmigaBasic
  3091.    AmigaSciSchool                         Infos
  3092.    Aminet                                 FTP
  3093.    AmiTCP/IP FAQ                          FAQs
  3094.    Anonymous                              FTP
  3095.    ANS                                    Japanisch
  3096.    Assembler                              Compiler
  3097.    AutoDocs                               Include-Dateien
  3098.    Autoren (gcc)                          Autoren
  3099.    Basic                                  Compiler
  3100.    BBS                                    Mailbox
  3101.    Beiträge                              Beiträge
  3102.    C                                      Compiler
  3103.    C++                                    Compiler
  3104.    Catalog description                    Lokalisierung
  3105.    Catalog translation                    Lokalisierung
  3106.    CatComp                                Lokalisierung
  3107.    CATS                                   CATS
  3108.    Chunky                                 Chunky vs. Planar
  3109.    Commodore, Frankfurt                   Developer
  3110.    Commodore, West Chester                CATS
  3111.    Compiler                               Compiler
  3112.    Console window                         WindowPtr
  3113.    CrossDos                               MS-Dos-Disketten
  3114.    DaggeX                                 X11
  3115.    Danksagungen                           Danksagungen
  3116.    Dateiendungen                          Endungen
  3117.    Desktop Publishing                     DTP
  3118.    Developer                              Developer
  3119.    Dokumentation                          Dokumentation
  3120.    DoMethod                               Fehlende Funktionen
  3121.    DoSuperMethod                          Fehlende Funktionen
  3122.    Doublebuffering                        Doublebuffering
  3123.    Druckersteuerung                       Druckersteuerung
  3124.    DTP                                    DTP
  3125.    Editoren                               Editoren
  3126.    Emulationen                            Emulationen
  3127.    Endungen                               Endungen
  3128.    Enforcer                               68EC0xx
  3129.    Esc-Sequenzen                          Druckersteuerung
  3130.    FAQ's, andere                          FAQs
  3131.    FD-files                               Pragmas
  3132.    fd2inline                              Inline-Dateien
  3133.    fd2pragma                              Pragmas
  3134.    Fehlende Funktionen                    Fehlende Funktionen
  3135.    Festplatte (A1200)                     A1200-HD
  3136.    Fish-CD-Rom                            Fish-CD
  3137.    Fish-Disketten                         Fish-Floppies
  3138.    Fish-Disks                             Fish-Disk xxx
  3139.    Fish-PD-Serie                          Fish
  3140.    FishCon                                Infos
  3141.    FishXref                               Infos
  3142.    FlexCat                                Lokalisierung
  3143.    Forth                                  Compiler
  3144.    Fortran                                Compiler
  3145.    FPU                                    FPU
  3146.    Fresh Fish CD-Rom                      Fish-CD
  3147.    FTP-FAQ                                FAQs
  3148.    FTP-Servers                            FTP
  3149.    GadTools                               MUI
  3150.    Gcc                                    Der GNU C Compiler
  3151.    gen20                                  Inline-Dateien
  3152.    gen30                                  Inline-Dateien
  3153.    gen31                                  Inline-Dateien
  3154.    Geschichte                             Amiga-FAQ-Archiv
  3155.    GfxBase                                X11
  3156.    GigaMem                                68EC0xx
  3157.    Grafik                                 Grafik
  3158.    Guo Biao                               Chinesisch
  3159.    Hardwareanforderungen (gcc)            Anforderungen
  3160.    HD-Kompression                         HD-Kompression
  3161.    Hilfe (gcc)                            Hilfe
  3162.    Hirsch & Wolf                          CATS
  3163.    HookEntry                              Fehlende Funktionen
  3164.    HP-Deskjet                             Tintenstrahldrucker
  3165.    hunk2gcc                               Amiga-Libraries
  3166.    HZview                                 Chinesisch
  3167.    IBM-Kompatible Emulator                IBM-Kompatible
  3168.    Include-Dateien                        Include-Dateien
  3169.    Informationen (gcc)                    Hilfe
  3170.    Inline-Dateien (gcc)                   Inline-Dateien
  3171.    Installation (gcc)                     Installation
  3172.    JemTeX                                 Japanisch
  3173.    JIStoJi                                Japanisch
  3174.    jmore                                  Japanisch
  3175.    Kanji                                  Japanisch
  3176.    Kartuschen                             Tintenstrahldrucker
  3177.    Kataloge                               Lokalisierung
  3178.    KingFisher                             Infos
  3179.    KitCat                                 Lokalisierung
  3180.    Kompilieren (gcc)                      Kompilieren
  3181.    Konsolenfenster                        WindowPtr
  3182.    LibAllocPooled                         Fehlende Funktionen
  3183.    Linux                                  Unix
  3184.    Lisp                                   Compiler
  3185.    locale.library                         Lokalisierung
  3186.    Localisierung                          Lokalisierung
  3187.    Mail-Listen                            Mail-Listen
  3188.    Mail-server                            Mail
  3189.    Mailbox                                Mailbox
  3190.    MakeCat                                Lokalisierung
  3191.    Manuale                                Dokumentation
  3192.    MMU                                    68EC0xx
  3193.    Modula-2                               Compiler
  3194.    Monitore                               Monitore
  3195.    MS-Dos (Emulator)                      IBM-Kompatible
  3196.    MS-Dos (Wechselplatten)                MsDos-Syquest
  3197.    MS-Dos-Disketten                       MS-Dos-Disketten
  3198.    Msh                                    MS-Dos-Disketten
  3199.    MUI                                    MUI
  3200.    Multiscan                              Monitore
  3201.    NDA                                    Developer
  3202.    NDK                                    Include-Dateien
  3203.    NDU                                    Include-Dateien
  3204.    NDUK                                   Include-Dateien
  3205.    NetBSD                                 Unix
  3206.    Oberon                                 Compiler
  3207.    Oberon-A                               Compiler
  3208.    Packer                                 Endungen
  3209.    Packer on Unix                         Endungen
  3210.    Pascal                                 Compiler
  3211.    Pipe (command)                         Pipe-Kommando
  3212.    PIPE:                                  Pipes
  3213.    Planar                                 Chunky vs. Planar
  3214.    Point manager FAQ                      FAQs
  3215.    PostScript                             PostScript
  3216.    Pragmas                                Pragmas
  3217.    Prolog                                 Compiler
  3218.    Quelltexte (gcc)                       Gcc-Quellen
  3219.    Queue-handler                          Pipes
  3220.    RAM, virtuelles                        68EC0xx
  3221.    RKM's                                  Dokumentation
  3222.    ROM Kernel Manuals                     Dokumentation
  3223.    Splitten von Dateien                   Splitten
  3224.    Stacker                                HD-Kompression
  3225.    Syquest                                MsDos-Syquest
  3226.    TeX                                    TeX
  3227.    Text-Editoren                          Editoren
  3228.    Textbearbeitungssprachen               Textverarbeitungen
  3229.    Textverarbeitung                       Textverarbeitungen
  3230.    Tintenstrahldrucker                    Tintenstrahldrucker
  3231.    Unix                                   Unix
  3232.    Unix-LhA                               Unix-LhA
  3233.    Version (gcc)                          Aktuelle Version
  3234.    VGA                                    Monitore
  3235.    Wechselplatten                         MsDos-Syquest
  3236.    Wysiwyg                                Textverarbeitungen
  3237.    X11                                    X11
  3238.    XFH                                    HD-Kompression
  3239.    XPK                                    HD-Kompression
  3240.    _mchar                                 _mchar
  3241.    _pchar                                 _pchar
  3242.   
  3243.